IGenericCapableType Interface

Namespace
Kampute.DocToolkit.Metadata
Assembly
  • Kampute.DocToolkit.dll

Definition

Defines a contract for accessing metadata for types that can be generic.
public interface IGenericCapableType : IType
Extends
Implemented by

Remarks

This interface provides access to metadata specific to types that can be generic (classes, structs, interfaces, delegates).

Properties

GenericTypeDefinitionGets the generic type definition if the type is a constructed generic type.
IsConstructedGenericTypeGets a value indicating whether the type is a constructed generic type.
IsGenericTypeDefinitionGets a value indicating whether the type is a generic type definition.
OwnGenericParameterRangeGets the offset and number of generic parameters belonging exclusively to this type, excluding any from its declaring type, if the type is generic.
TypeArgumentsGets the type arguments provided to the type if the type is a constructed generic type.
TypeParametersGets the type parameters declared by the type and its declaring types if the type is a generic type definition.
UnqualifiedNameGets the unqualified name of the type without any generic arity suffix.

Extension Methods

GetInheritedMember(this IMember)Retrieves the member that this member directly inherits from.
GetMemberDefinition(this IMember)Retrieves the definition of the member, resolving any constructed or decorated forms to their underlying definitions.
GetMembers(this IType)Gets all members directly declared by the type, excluding nested types.
GetMembersIncludingNested(this IType)Gets all members of the type, including its nested types and their members at all nesting levels.
TryGetOwnTypeParameters(this IMember, out IEnumerable<ITypeParameter>)Attempts to get the type parameters declared directly by the specified member if it is generic.