Class GenericTypeActivator
- Namespace
- AsmResolver.DotNet.Signatures
- Assembly
- AsmResolver.DotNet.dll
Provides a mechanism for substituting generic type parameters in a type signature with arguments.
public class GenericTypeActivator : ITypeSignatureVisitor<GenericContext, TypeSignature>
- Inheritance
-
GenericTypeActivator
- Implements
- Inherited Members
Remarks
When the type signature does not contain any generic parameter, this activator might return the current instance of the type signature, to preserve heap allocations.
Properties
Instance
Gets the default instance of the GenericTypeActivator class
public static GenericTypeActivator Instance { get; }
Property Value
Methods
InstantiateFieldSignature(FieldSignature, GenericContext)
Instantiates a new field signature, substituting any generic type parameter in the signature with the activation context.
public FieldSignature InstantiateFieldSignature(FieldSignature signature, GenericContext context)
Parameters
signature
FieldSignatureThe signature to activate.
context
GenericContextThe generic context to put the type signature in.
Returns
- FieldSignature
The activated signature.
InstantiateMethodSignature(MethodSignature, GenericContext)
Instantiates a new method signature, substituting any generic type parameter in the signature with the activation context.
public MethodSignature InstantiateMethodSignature(MethodSignature signature, GenericContext context)
Parameters
signature
MethodSignatureThe signature to activate.
context
GenericContextThe generic context to put the type signature in.
Returns
- MethodSignature
The activated signature.
InstantiatePropertySignature(PropertySignature, GenericContext)
Instantiates a new method signature, substituting any generic type parameter in the signature with the activation context.
public PropertySignature InstantiatePropertySignature(PropertySignature signature, GenericContext context)
Parameters
signature
PropertySignatureThe signature to activate.
context
GenericContextThe generic context to put the type signature in.
Returns
- PropertySignature
The activated signature.
VisitArrayType(ArrayTypeSignature, GenericContext)
Visits an instance of an ArrayTypeSignature.
public TypeSignature VisitArrayType(ArrayTypeSignature signature, GenericContext context)
Parameters
signature
ArrayTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitBoxedType(BoxedTypeSignature, GenericContext)
Visits an instance of a BoxedTypeSignature.
public TypeSignature VisitBoxedType(BoxedTypeSignature signature, GenericContext context)
Parameters
signature
BoxedTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitByReferenceType(ByReferenceTypeSignature, GenericContext)
Visits an instance of a ByReferenceTypeSignature.
public TypeSignature VisitByReferenceType(ByReferenceTypeSignature signature, GenericContext context)
Parameters
signature
ByReferenceTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitCorLibType(CorLibTypeSignature, GenericContext)
Visits an instance of a CorLibTypeSignature.
public TypeSignature VisitCorLibType(CorLibTypeSignature signature, GenericContext context)
Parameters
signature
CorLibTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitCustomModifierType(CustomModifierTypeSignature, GenericContext)
Visits an instance of a CustomModifierTypeSignature.
public TypeSignature VisitCustomModifierType(CustomModifierTypeSignature signature, GenericContext context)
Parameters
signature
CustomModifierTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitFunctionPointerType(FunctionPointerTypeSignature, GenericContext)
Visits an instance of a FunctionPointerTypeSignature.
public TypeSignature VisitFunctionPointerType(FunctionPointerTypeSignature signature, GenericContext context)
Parameters
signature
FunctionPointerTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitGenericInstanceType(GenericInstanceTypeSignature, GenericContext)
Visits an instance of a GenericInstanceTypeSignature.
public TypeSignature VisitGenericInstanceType(GenericInstanceTypeSignature signature, GenericContext context)
Parameters
signature
GenericInstanceTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitGenericParameter(GenericParameterSignature, GenericContext)
Visits an instance of a GenericParameterSignature.
public TypeSignature VisitGenericParameter(GenericParameterSignature signature, GenericContext context)
Parameters
signature
GenericParameterSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitPinnedType(PinnedTypeSignature, GenericContext)
Visits an instance of a PinnedTypeSignature.
public TypeSignature VisitPinnedType(PinnedTypeSignature signature, GenericContext context)
Parameters
signature
PinnedTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitPointerType(PointerTypeSignature, GenericContext)
Visits an instance of a PointerTypeSignature.
public TypeSignature VisitPointerType(PointerTypeSignature signature, GenericContext context)
Parameters
signature
PointerTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitSentinelType(SentinelTypeSignature, GenericContext)
Visits an instance of a SentinelTypeSignature.
public TypeSignature VisitSentinelType(SentinelTypeSignature signature, GenericContext context)
Parameters
signature
SentinelTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitSzArrayType(SzArrayTypeSignature, GenericContext)
Visits an instance of a SzArrayTypeSignature.
public TypeSignature VisitSzArrayType(SzArrayTypeSignature signature, GenericContext context)
Parameters
signature
SzArrayTypeSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.
VisitTypeDefOrRef(TypeDefOrRefSignature, GenericContext)
Visits an instance of a TypeDefOrRefSignature.
public TypeSignature VisitTypeDefOrRef(TypeDefOrRefSignature signature, GenericContext context)
Parameters
signature
TypeDefOrRefSignatureThe signature to visit.
context
GenericContext
Returns
- TypeSignature
The result provided by the visitor.