The Gallio.Common.Reflection namespace defines an abstract reflection Api
similar to System.Reflection but intended to enable reflection of .Net code
assets that are not loaded as executable assemblies. The reflection Api
provides several capabilities not present in System.Reflection including the
ability to obtain source file and line number information as well as Xml
documentation comments. This namespace includes a wrapper for standard .Net
reflection and for a file-based reflection policy based on Mono.Cecil.
Classes
| Class | Description | |
|---|---|---|
| AssemblyBinding |
An assembly binding specifies the name and location of an assembly as well
as some properties to control how the .Net assembly loader resolves
particular assembly versions.
| |
| AssemblyBinding..::.BindingRedirect |
Specifies an old version range for an assembly binding redirect.
| |
| AssemblyMetadata |
Provides basic information about an Assembly derived from its metadata.
| |
| AssemblySignature |
Describes characteristics used to match an assembly such as an assembly name and version range.
| |
| AssemblyUtils |
Provides helpers for working with assemblies.
| |
| AttributeUtils |
Manipulates attributes described by their metadata.
| |
| CodeElementSorter |
Sorts code elements in various ways.
| |
| DeclaringTypeComparer<(Of <(T>)>) |
Sorts an members that all belong to the same type
such that the members declared by supertypes appear before those
declared by subtypes.
| |
| ProxyUtils |
Utilities for generating dynamic proxies and adapters using code generation techniques.
| |
| ReflectionOnlyAssemblyLoader |
This assembly loader loads assemblies externally for reflection only.
| |
| ReflectionResolveException |
The type of exception thrown when a reflection info object or reference cannot
be resolved.
| |
| ReflectionUtils |
Provides functions for working with reflection.
| |
| Reflector |
Wraps reflection types using the reflection adapter interfaces.
Also resolves code references.
| |
| TypeName |
Describes the name of a type and allows partial type names to be compared with one another.
|
Structures
| Structure | Description | |
|---|---|---|
| CodeLocation |
Specifies the location of a code element as a position within a file.
| |
| CodeReference |
A code reference is a pointer into the structure of a .Net program for use in
describing the location of a certain code construct to the user. It is
typically used to identify the point of definition of a test component.
| |
| ConstantValue |
Specifies a typed constant value.
|
Interfaces
| Interface | Description | |
|---|---|---|
| IAssemblyInfo |
A Assembly reflection wrapper.
| |
| IAttributeInfo |
Provides information about the contents of a custom attribute.
| |
| ICodeElementInfo |
Represents a structural element of some code base.
| |
| IConstructorInfo |
A ConstructorInfo reflection wrapper.
| |
| IEventInfo |
A EventInfo reflection wrapper.
| |
| IFieldInfo |
A FieldInfo reflection wrapper.
| |
| IFunctionInfo |
A MethodBase reflection wrapper.
| |
| IGenericParameterInfo | ||
| IMemberInfo |
A MemberInfo reflection wrapper.
| |
| IMethodInfo |
A MethodInfo reflection wrapper.
| |
| IMirror |
A mirror describes a code element or attribute using a particular reflection policy.
| |
| INamespaceInfo |
A namespace reflection wrapper identified by its name.
| |
| IParameterInfo |
A ParameterInfo reflection wrapper.
| |
| IPropertyInfo |
A PropertyInfo reflection wrapper.
| |
| IReflectionPolicy |
A reflection policy provides access to top-level reflection resources
such as assemblies.
| |
| ISlotInfo |
A slot represents a field, property or parameter. It is used to
simplify the handling of data binding since all three of these types
are similar in that they can hold values of some type.
| |
| ITypeInfo |
A Type reflection wrapper.
|
Enumerations
| Enumeration | Description | |
|---|---|---|
| AssemblyMetadataFields |
Specifies the optional fields of the assembly metadata that are to be populated.
| |
| CodeElementKind |
Describes the kind of code element represented by a ICodeElementInfo.
| |
| CodeReferenceKind |
Describes the kind of code element specified by a CodeReference.
| |
| ConstantValue..::.UnresolvedEnum |
A placeholder enum type used to express enum values that cannot be resolved because
their actual enum type cannot be resolved.
|
