Table of Contents

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

GenericTypeActivator

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 FieldSignature

The signature to activate.

context GenericContext

The 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 MethodSignature

The signature to activate.

context GenericContext

The 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 PropertySignature

The signature to activate.

context GenericContext

The 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 ArrayTypeSignature

The 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 BoxedTypeSignature

The 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 ByReferenceTypeSignature

The 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 CorLibTypeSignature

The 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 CustomModifierTypeSignature

The 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 FunctionPointerTypeSignature

The 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 GenericInstanceTypeSignature

The 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 GenericParameterSignature

The 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 PinnedTypeSignature

The 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 PointerTypeSignature

The 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 SentinelTypeSignature

The 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 SzArrayTypeSignature

The 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 TypeDefOrRefSignature

The signature to visit.

context GenericContext

Returns

TypeSignature

The result provided by the visitor.