In This Article

ITypeMemberDefinition Interface

Provides the base requirements of a type member (method, property, etc.) definition.

public interface ITypeMemberDefinition : ITypeMemberReference, IReflectionDefinition

Properties

Access

A TypeMemberAccess indicating the current member's access visibility.

TypeMemberAccess Access { get; }

Property Value

TypeMemberAccess

DeclaringType

The ITypeDefinition representing the type that declares the current member.

ITypeDefinition? DeclaringType { get; }

Property Value

ITypeDefinition

DocumentationComment

The optional documentation comment, if the current member is defined in source code.

string? DocumentationComment { get; }

Property Value

string

ExtensionType

The type that is implicitly used as a first argument, when an extension method is invoked.

ITypeDefinition? ExtensionType { get; }

Property Value

ITypeDefinition

GetterAccess

A TypeMemberAccess indicating the getter access visibility if this member is a property.

TypeMemberAccess GetterAccess { get; }

Property Value

TypeMemberAccess

IsAbstract

Indicates whether the current member is abstract and must be overridden.

bool IsAbstract { get; }

Property Value

bool

IsAdvanced

Indicates whether the current member is decorated such that it should only be visible to advanced users within an editor.

bool IsAdvanced { get; }

Property Value

bool

IsAsync

Indicates whether the current member is designated as having an asynchronous result.

bool IsAsync { get; }

Property Value

bool

IsDefault

Indicates whether the current member is the default member for the declaring type.

bool IsDefault { get; }

Property Value

bool

IsDynamicReturnType

Indicates whether the return type is a dynamic type.

bool IsDynamicReturnType { get; }

Property Value

bool

IsExtension

Indicates whether the current member is decorated as an extension method.

bool IsExtension { get; }

Property Value

bool

IsExternalInit

Indicates whether the current member (if a property) can only be set in an initializer.

bool IsExternalInit { get; }

Property Value

bool

IsFinal

Indicates whether the current member is declared final.

bool IsFinal { get; }

Property Value

bool

IsHidden

Indicates whether the current member is decorated such that it should never be visible within an editor.

bool IsHidden { get; }

Property Value

bool

IsImplicitDefaultConstructor

Indicates whether the current member is an implicit default constructor.

bool IsImplicitDefaultConstructor { get; }

Property Value

bool

IsLiteral

Indicates whether the current member's value is written at compile time and cannot be changed.

bool IsLiteral { get; }

Property Value

bool

IsObsolete

Indicates whether the current member is decorated as obsolete.

bool IsObsolete { get; }

Property Value

bool

IsReadOnly

Indicates whether the current member is read-only.

bool IsReadOnly { get; }

Property Value

bool

IsStatic

Indicates whether the current member is declared static.

bool IsStatic { get; }

Property Value

bool

IsVirtual

Indicates whether the current member is virtual and can be overridden.

bool IsVirtual { get; }

Property Value

bool

IsWriteOnly

Indicates whether the current member is write-only.

bool IsWriteOnly { get; }

Property Value

bool

Kind

A TypeMemberDefinitionKind that indicates the kind of type member definition.

TypeMemberDefinitionKind Kind { get; }

Property Value

TypeMemberDefinitionKind

Parameters

The collection of parameters to the current member.

IParameterDefinitionCollection Parameters { get; }

Property Value

IParameterDefinitionCollection

ReturnType

The type that is returned by the current member.

ITypeReference? ReturnType { get; }

Property Value

ITypeReference

SetterAccess

A TypeMemberAccess indicating the setter access visibility if this member is a property.

TypeMemberAccess SetterAccess { get; }

Property Value

TypeMemberAccess

SourceFileLocation

The source file location that contain the current member's declarations.

ISourceFileLocation? SourceFileLocation { get; }

Property Value

ISourceFileLocation

Remarks

This property only knows the source file location for member definitions loaded from code.

TypeParameters

The collection of generic type parameters, when the current member is a generic method definition.

ITypeParameterCollection TypeParameters { get; }

Property Value

ITypeParameterCollection

Inherited Members

Extension Methods