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
signatureFieldSignatureThe signature to activate.
contextGenericContextThe 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
signatureMethodSignatureThe signature to activate.
contextGenericContextThe 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
signaturePropertySignatureThe signature to activate.
contextGenericContextThe 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
signatureArrayTypeSignatureThe signature to visit.
contextGenericContext
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
signatureBoxedTypeSignatureThe signature to visit.
contextGenericContext
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
signatureByReferenceTypeSignatureThe signature to visit.
contextGenericContext
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
signatureCorLibTypeSignatureThe signature to visit.
contextGenericContext
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
signatureCustomModifierTypeSignatureThe signature to visit.
contextGenericContext
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
signatureFunctionPointerTypeSignatureThe signature to visit.
contextGenericContext
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
signatureGenericInstanceTypeSignatureThe signature to visit.
contextGenericContext
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
signatureGenericParameterSignatureThe signature to visit.
contextGenericContext
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
signaturePinnedTypeSignatureThe signature to visit.
contextGenericContext
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
signaturePointerTypeSignatureThe signature to visit.
contextGenericContext
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
signatureSentinelTypeSignatureThe signature to visit.
contextGenericContext
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
signatureSzArrayTypeSignatureThe signature to visit.
contextGenericContext
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
signatureTypeDefOrRefSignatureThe signature to visit.
contextGenericContext
Returns
- TypeSignature
The result provided by the visitor.