Table of Contents

Class FunctionPointerType

Namespace
ICSharpCode.Decompiler.TypeSystem
Assembly
ICSharpCode.Decompiler.dll
public class FunctionPointerType : AbstractType, IType, INamedElement, IEquatable<IType>
Inheritance
FunctionPointerType
Implements
Inherited Members
Extension Methods

Constructors

FunctionPointerType(MetadataModule, SignatureCallingConvention, ImmutableArray<IType>, IType, bool, ImmutableArray<IType>, ImmutableArray<ReferenceKind>)

public FunctionPointerType(MetadataModule module, SignatureCallingConvention callingConvention, ImmutableArray<IType> customCallingConventions, IType returnType, bool returnIsRefReadOnly, ImmutableArray<IType> parameterTypes, ImmutableArray<ReferenceKind> parameterReferenceKinds)

Parameters

module MetadataModule
callingConvention SignatureCallingConvention
customCallingConventions ImmutableArray<IType>
returnType IType
returnIsRefReadOnly bool
parameterTypes ImmutableArray<IType>
parameterReferenceKinds ImmutableArray<ReferenceKind>

Fields

CallingConvention

public readonly SignatureCallingConvention CallingConvention

Field Value

SignatureCallingConvention

CustomCallingConventions

public readonly ImmutableArray<IType> CustomCallingConventions

Field Value

ImmutableArray<IType>

ParameterReferenceKinds

public readonly ImmutableArray<ReferenceKind> ParameterReferenceKinds

Field Value

ImmutableArray<ReferenceKind>

ParameterTypes

public readonly ImmutableArray<IType> ParameterTypes

Field Value

ImmutableArray<IType>

ReturnIsRefReadOnly

public readonly bool ReturnIsRefReadOnly

Field Value

bool

ReturnType

public readonly IType ReturnType

Field Value

IType

Properties

IsReferenceType

public override bool? IsReferenceType { get; }

Property Value

bool?

Kind

Gets the type kind.

public override TypeKind Kind { get; }

Property Value

TypeKind

Name

public override string Name { get; }

Property Value

string

Methods

AcceptVisitor(TypeVisitor)

public override IType AcceptVisitor(TypeVisitor visitor)

Parameters

visitor TypeVisitor

Returns

IType

Equals(IType)

public override bool Equals(IType other)

Parameters

other IType

Returns

bool

FromSignature(MethodSignature<IType>, MetadataModule)

public static FunctionPointerType FromSignature(MethodSignature<IType> signature, MetadataModule module)

Parameters

signature MethodSignature<IType>
module MetadataModule

Returns

FunctionPointerType

GetDefinition()

Gets the underlying type definition. Can return null for types which do not have a type definition (for example arrays, pointers, type parameters).

public override ITypeDefinition GetDefinition()

Returns

ITypeDefinition

GetDefinitionOrUnknown()

Gets the underlying type definition or UnkownType, if unknown. Can return null for types which do not have a type definition (for example arrays, pointers, type parameters).

public override ITypeDefinitionOrUnknown GetDefinitionOrUnknown()

Returns

ITypeDefinitionOrUnknown

GetHashCode()

public override int GetHashCode()

Returns

int

VisitChildren(TypeVisitor)

public override IType VisitChildren(TypeVisitor visitor)

Parameters

visitor TypeVisitor

Returns

IType