PostSharp SDK6.7//Post­Sharp.​Sdk.​Code­Model Namespace/IType Interface

IType Interface

Defines the semantics of a type.

Namespace:  PostSharp.Sdk.CodeModel
Assembly:  PostSharp.Compiler.Engine (in PostSharp.Compiler.Engine.dll) Version: 6.7.10.0 (6.7.10.0)
Syntax
C#
public interface IType : ITypeSignatureDeclaration, ITypeSignature, 
	IModuleElement, IVisitable<ITypeSignature>, IGeneric, IEquatable<ITypeSignature>, 
	IWriteReflectionName, IDeclaration, IElement, IMember, IMetadataDeclaration, 
	ITaggable, INamed

The IType type exposes the following members.

Properties
  NameDescription
Public propertyAttributes
Gets or sets the type attributes.
Public propertyCustomAttributes
Gets the collection of custom attributes.
(Inherited from IMetadataDeclaration.)
Public propertyDeclaringAssembly
Gets the declaring assembly.
(Inherited from IModuleElement.)
Public propertyDeclaringType
Gets the declaring type.
(Inherited from IMember.)
Public propertyDomain
Gets the Domain to which the current element belongs.
(Inherited from IElement.)
Public propertyFields
Gets the collection of fields.
Public propertyIsGenericDefinition
Determines whether the current instance is a generic definition, i.e. whether it can be used to construct generic instances.
(Inherited from IGeneric.)
Public propertyIsGenericInstance
Determines whether the current instance is a generic instance, i.e. whether it has been constructed from a generic definition.
(Inherited from IGeneric.)
Public propertyIsSealed
Determines whether the type is sealed. When a type is sealed, it not possible to have a type that derives from this type.
(Inherited from ITypeSignature.)
Public propertyIsStatic
Determines whether the current member is static.
(Inherited from IMember.)
Public propertyMetadataToken
Gets the metadata token of the current declaration.
(Inherited from IMetadataDeclaration.)
Public propertyMethods
Gets the collection of methods.
Public propertyModule
Gets the declaring module.
(Inherited from IModuleElement.)
Public propertyName (Inherited from INamed.)
Public propertyParent
Gets the direct parent of the current element.
(Inherited from IElement.)
Public propertyParentMember
Gets the parent member of the current declaration.
(Inherited from IMetadataDeclaration.)
Public propertyParentType
Gets the parent type of the current declaration.
(Inherited from IMetadataDeclaration.)
Public propertyTypeSignatureElementKind (Inherited from ITypeSignature.)
Public propertyVisibility
Gets the Visibility of the current member.
(Inherited from IMember.)
Methods
  NameDescription
Public methodContainsGenericArguments (Inherited from IGeneric.)
Public methodEquals
Indicates whether the current object is equal to another object of the same type.
(Inherited from IEquatable<ITypeSignature>.)
Public methodGetCanonicalHashCode
Gets a hash code that is invariant under type signature equality (i.e. if two types are equal under IEquatable<T>, they have the same canonical hash code).
(Inherited from ITypeSignature.)
Public methodGetGenericContext
Gets the generic context inside the scope of the generic instance.
(Inherited from IGeneric.)
Public methodGetNakedType
Returns the meaningful type. Removes specified modifiers and resolves type references.
(Inherited from ITypeSignature.)
Public methodGetReflectionObject
Gets the system, runtime object (Type, FieldInfo, MethodInfo, ParameterInfo, ...) corresponding to the current declaration.
(Inherited from IMetadataDeclaration.)
Public methodGetSystemType(Type[], Type[])
Gets the system, runtime Type corresponding to the current type.
(Inherited from ITypeSignature.)
Public methodGetSystemType(Type[], Type[], BindingOptions)
Gets the system, runtime Type corresponding to the current type.
(Inherited from ITypeSignature.)
Public methodGetTag<T>
Gets a tag associated with the current declaration.
(Inherited from ITaggable.)
Public methodGetTokenType
Gets the metadata token type of the current declaration.
(Inherited from IMetadataDeclaration.)
Public methodGetTypeDefinition
Finds in the current domain the TypeDefDeclaration corresponding to the current type and specifies BindingOptions.
(Inherited from ITypeSignature.)
Public methodGetValueSize
Gets the size of the value type.
(Inherited from ITypeSignature.)
Public methodIsValueTypeSafe (Inherited from ITypeSignature.)
Public methodMapGenericArguments
Resolves all generic arguments in the current type signature.
(Inherited from ITypeSignature.)
Public methodMatchesReference
Determines whether the current type signature matches a given type signature.
(Inherited from ITypeSignature.)
Public methodSetTag<T>
Set a tag to the current declaration.
(Inherited from ITaggable.)
Public methodTranslate
Translates the current element so that it can be used in a given module.
(Inherited from IModuleElement.)
Public methodTranslateType
Translates the current type signature so that it is meaningful in another module than the one to which it primarily belong.
(Inherited from ITypeSignature.)
Public methodVisit (Inherited from IVisitable<ITypeSignature>.)
Public methodWriteReflectionName(StringBuilder, ReflectionNameOptions)
Writes the name of the current declaration to a StringBuilder.
(Inherited from IWriteReflectionName.)
Public methodWriteReflectionName(StringBuilder, ReflectionNameOptions, NameMapper)
Writes the name of the current declaration to a StringBuilder and specifies a NameMapper.
(Inherited from IWriteReflectionName.)
Extension Methods
  NameDescription
Public Extension MethodFindMethod(IMethod)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodFindMethod(String, IMethodSignature, BindingOptions)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodGetAssignmentDistance(ITypeSignature)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodGetAssignmentDistance(ITypeSignature, GenericMap)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodGetDisplayName
Gets the name of a given declaration as it should be displayed to the user.
(Defined by WriteReflectionNameExtensions.)
Public Extension MethodGetReflectionName()Overloaded.
Gets the name of a given declaration and returns a string that is compatible with the result of the ToString method of system reflection objects.
(Defined by WriteReflectionNameExtensions.)
Public Extension MethodGetReflectionName(ReflectionNameOptions)Overloaded.
Gets the name of a given declaration and returns a string that is compatible with the result of the ToString method of system reflection objects.
(Defined by WriteReflectionNameExtensions.)
Public Extension MethodGetReflectionName(ReflectionNameOptions, NameMapper)Overloaded.
Gets the name of a given declaration, constructed using given options.
(Defined by WriteReflectionNameExtensions.)
Public Extension MethodIs<T> (Defined by TypeSignatureExtensions.)
Public Extension MethodIsAbstract()Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsAbstract()Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsAssignableFromRuntimeType (Defined by TypeSignatureExtensions.)
Public Extension MethodIsAssignableFromRuntimeValue
Determines whether a given type signature can be assigned a given runtime value.
(Defined by TypeSignatureExtensions.)
Public Extension MethodIsAssignableTo(ITypeSignature)Overloaded.
Determines whether instances of the current type is assignable to locations of a specified type (i.e. whether the current type derives or implements this type).
(Defined by TypeSignatureExtensions.)
Public Extension MethodIsAssignableTo(ITypeSignature, GenericMap)Overloaded.
Determines whether instances of the current type is assignable to locations of a specified type (i.e. whether the current type derives or implements this type) and specifies a GenericMap.
(Defined by TypeSignatureExtensions.)
Public Extension MethodIsAssignableToRuntimeType (Defined by TypeSignatureExtensions.)
Public Extension MethodIsByRef (Defined by TypeSignatureExtensions.)
Public Extension MethodIsDelegate (Defined by TypeSignatureExtensions.)
Public Extension MethodIsEnum (Defined by TypeSignatureExtensions.)
Public Extension MethodIsExternallyVisible()Overloaded.
Determines whether a member is visible outside its assembly.
(Defined by VisibilityHelper.)
Public Extension MethodIsExternallyVisible()Overloaded. (Defined by VisibilityHelper.)
Public Extension MethodIsInterface()Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsInterface()Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsIntrinsic (Defined by TypeSignatureExtensions.)
Public Extension MethodIsNullable
Determines whether a given type signature can be assigned a null value.
(Defined by TypeSignatureExtensions.)
Public Extension MethodIsPointer(Nullable<Boolean>)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsPointer(Nullable<Boolean>, PointerTypeSignature)Overloaded. (Defined by TypeSignatureExtensions.)
Public Extension MethodIsPublic
Determines whether a member is visible outside its assembly.
(Defined by VisibilityHelper.)
Public Extension MethodIsValueType
Returns true if the type signature is a value type; false if it's a reference type; and throws a NullReferenceException if it's a generic parameter or if for some other reason we don't know if it's value or reference type. Consider using IsValueTypeSafe() == true instead.
(Defined by TypeSignatureExtensions.)
Public Extension MethodIsVisible
Determines whether a member is visible from a given scope.
(Defined by VisibilityHelper.)
Public Extension MethodToType (Defined by TypeSignatureExtensions.)
Remarks
A type has all the semantics of a type signature (ITypeSignature) and exposes additionally methods and fields.
See Also