Class ComplexType
Represents a complex type. Complex type is a type contructed on demand based on another type defined in some assembly, for example, an array or pointer type.
Inheritance
System.Object
System.Reflection.MemberInfo
System.Type
ComplexType
Implements
System.Reflection.ICustomAttributeProvider
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
System.Reflection.IReflect
Inherited Members
System.Type.FilterAttribute
System.Type.FilterName
System.Type.FilterNameIgnoreCase
System.Type.Missing
System.Type.Delimiter
System.Type.EmptyTypes
System.Type.GetType(System.String, System.Boolean, System.Boolean)
System.Type.GetType(System.String, System.Boolean)
System.Type.GetType(System.String)
System.Type.GetType(System.String, System.Func<System.Reflection.AssemblyName, System.Reflection.Assembly>, System.Func<System.Reflection.Assembly, System.String, System.Boolean, System.Type>)
System.Type.GetType(System.String, System.Func<System.Reflection.AssemblyName, System.Reflection.Assembly>, System.Func<System.Reflection.Assembly, System.String, System.Boolean, System.Type>, System.Boolean)
System.Type.GetType(System.String, System.Func<System.Reflection.AssemblyName, System.Reflection.Assembly>, System.Func<System.Reflection.Assembly, System.String, System.Boolean, System.Type>, System.Boolean, System.Boolean)
System.Type.ReflectionOnlyGetType(System.String, System.Boolean, System.Boolean)
System.Type.MakeArrayType(System.Int32)
System.Type.GetTypeFromProgID(System.String)
System.Type.GetTypeFromProgID(System.String, System.Boolean)
System.Type.GetTypeFromProgID(System.String, System.String)
System.Type.GetTypeFromProgID(System.String, System.String, System.Boolean)
System.Type.GetTypeFromCLSID(System.Guid)
System.Type.GetTypeFromCLSID(System.Guid, System.Boolean)
System.Type.GetTypeFromCLSID(System.Guid, System.String)
System.Type.GetTypeFromCLSID(System.Guid, System.String, System.Boolean)
System.Type.GetTypeCode(System.Type)
System.Type.GetTypeCodeImpl()
System.Type.InvokeMember(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object, System.Object[], System.Globalization.CultureInfo)
System.Type.InvokeMember(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object, System.Object[])
System.Type.GetTypeHandle(System.Object)
System.Type.GetTypeFromHandle(System.RuntimeTypeHandle)
System.Type.GetConstructor(System.Reflection.BindingFlags, System.Reflection.Binder, System.Reflection.CallingConventions, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetConstructor(System.Reflection.BindingFlags, System.Reflection.Binder, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetConstructor(System.Type[])
System.Type.GetConstructors()
System.Type.GetMethod(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Reflection.CallingConventions, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetMethod(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetMethod(System.String, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetMethod(System.String, System.Type[])
System.Type.GetMethod(System.String, System.Reflection.BindingFlags)
System.Type.GetMethod(System.String)
System.Type.GetMethods()
System.Type.GetField(System.String)
System.Type.GetFields()
System.Type.GetInterface(System.String)
System.Type.FindInterfaces(System.Reflection.TypeFilter, System.Object)
System.Type.GetEvent(System.String)
System.Type.GetEvents()
System.Type.GetProperty(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Type, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetProperty(System.String, System.Type, System.Type[], System.Reflection.ParameterModifier[])
System.Type.GetProperty(System.String, System.Reflection.BindingFlags)
System.Type.GetProperty(System.String, System.Type, System.Type[])
System.Type.GetProperty(System.String, System.Type[])
System.Type.GetProperty(System.String, System.Type)
System.Type.GetProperty(System.String)
System.Type.GetProperties()
System.Type.GetNestedTypes()
System.Type.GetNestedType(System.String)
System.Type.GetMember(System.String)
System.Type.GetMember(System.String, System.Reflection.MemberTypes, System.Reflection.BindingFlags)
System.Type.GetMembers()
System.Type.GetDefaultMembers()
System.Type.FindMembers(System.Reflection.MemberTypes, System.Reflection.BindingFlags, System.Reflection.MemberFilter, System.Object)
System.Type.GetGenericParameterConstraints()
System.Type.IsValueTypeImpl()
System.Type.MakeGenericType(System.Type[])
System.Type.IsContextfulImpl()
System.Type.IsMarshalByRefImpl()
System.Type.GetEnumNames()
System.Type.GetEnumValues()
System.Type.GetEnumUnderlyingType()
System.Type.IsEnumDefined(System.Object)
System.Type.GetEnumName(System.Object)
System.Type.IsSubclassOf(System.Type)
System.Type.IsInstanceOfType(System.Object)
System.Type.IsAssignableFrom(System.Type)
System.Type.IsEquivalentTo(System.Type)
System.Type.GetTypeArray(System.Object[])
System.Type.Equals(System.Object)
System.Type.Equals(System.Type)
System.Type.GetInterfaceMap(System.Type)
System.Type.GetType()
System.Type.System.Runtime.InteropServices._Type.GetTypeInfoCount(System.UInt32)
System.Type.System.Runtime.InteropServices._Type.GetTypeInfo(System.UInt32, System.UInt32, System.IntPtr)
System.Type.System.Runtime.InteropServices._Type.GetIDsOfNames(System.Guid, System.IntPtr, System.UInt32, System.UInt32, System.IntPtr)
System.Type.System.Runtime.InteropServices._Type.Invoke(System.UInt32, System.Guid, System.UInt32, System.Int16, System.IntPtr, System.IntPtr, System.IntPtr, System.IntPtr)
System.Type.MemberType
System.Type.DeclaringMethod
System.Type.ReflectedType
System.Type.StructLayoutAttribute
System.Type.DefaultBinder
System.Type.TypeHandle
System.Type.TypeInitializer
System.Type.IsNested
System.Type.Attributes
System.Type.GenericParameterAttributes
System.Type.IsVisible
System.Type.IsNotPublic
System.Type.IsPublic
System.Type.IsNestedPublic
System.Type.IsNestedPrivate
System.Type.IsNestedFamily
System.Type.IsNestedAssembly
System.Type.IsNestedFamANDAssem
System.Type.IsNestedFamORAssem
System.Type.IsAutoLayout
System.Type.IsLayoutSequential
System.Type.IsExplicitLayout
System.Type.IsClass
System.Type.IsInterface
System.Type.IsValueType
System.Type.IsAbstract
System.Type.IsSealed
System.Type.IsEnum
System.Type.IsSpecialName
System.Type.IsImport
System.Type.IsSerializable
System.Type.IsAnsiClass
System.Type.IsUnicodeClass
System.Type.IsAutoClass
System.Type.IsArray
System.Type.IsConstructedGenericType
System.Type.IsGenericParameter
System.Type.GenericParameterPosition
System.Type.ContainsGenericParameters
System.Type.IsByRef
System.Type.IsPointer
System.Type.IsPrimitive
System.Type.IsCOMObject
System.Type.HasElementType
System.Type.IsContextful
System.Type.IsMarshalByRef
System.Type.GenericTypeArguments
System.Type.IsSecurityCritical
System.Type.IsSecuritySafeCritical
System.Type.IsSecurityTransparent
System.Reflection.MemberInfo.GetCustomAttributesData()
System.Reflection.MemberInfo.System.Runtime.InteropServices._MemberInfo.GetType()
System.Reflection.MemberInfo.System.Runtime.InteropServices._MemberInfo.GetTypeInfoCount(System.UInt32)
System.Reflection.MemberInfo.System.Runtime.InteropServices._MemberInfo.GetTypeInfo(System.UInt32, System.UInt32, System.IntPtr)
System.Reflection.MemberInfo.System.Runtime.InteropServices._MemberInfo.GetIDsOfNames(System.Guid, System.IntPtr, System.UInt32, System.UInt32, System.IntPtr)
System.Reflection.MemberInfo.System.Runtime.InteropServices._MemberInfo.Invoke(System.UInt32, System.Guid, System.UInt32, System.Int16, System.IntPtr, System.IntPtr, System.IntPtr, System.IntPtr)
System.Reflection.MemberInfo.CustomAttributes
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.MemberwiseClone()
Namespace: CilTools.Reflection
Assembly: CilTools.BytecodeAnalysis.dll
Syntax
public class ComplexType : Type, ICustomAttributeProvider, _MemberInfo, _Type, IReflect, IReflectionInfo
Constructors
ComplexType(Type, ComplexTypeKind, Type[])
Creates new instance of the complex type
Declaration
public ComplexType(Type t, ComplexTypeKind k, Type[] ga)
Parameters
Type | Name | Description |
---|---|---|
System.Type | t | Element type |
ComplexTypeKind | k | Kind of the complex type |
System.Type[] | ga | An array of generic type arguments, or null if this is not a generic type instantiation |
Properties
Assembly
Declaration
public override Assembly Assembly { get; }
Property Value
Type | Description |
---|---|
System.Reflection.Assembly |
Overrides
System.Type.Assembly
AssemblyQualifiedName
Declaration
public override string AssemblyQualifiedName { get; }
Property Value
Type | Description |
---|---|
System.String |
Overrides
System.Type.AssemblyQualifiedName
BaseType
Declaration
public override Type BaseType { get; }
Property Value
Type | Description |
---|---|
System.Type |
Overrides
System.Type.BaseType
DeclaringType
Declaration
public override Type DeclaringType { get; }
Property Value
Type | Description |
---|---|
System.Type |
Overrides
System.Type.DeclaringType
FullName
Declaration
public override string FullName { get; }
Property Value
Type | Description |
---|---|
System.String |
Overrides
System.Type.FullName
GUID
Declaration
public override Guid GUID { get; }
Property Value
Type | Description |
---|---|
System.Guid |
Overrides
System.Type.GUID
IsGenericType
Declaration
public override bool IsGenericType { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsGenericType
IsGenericTypeDefinition
Declaration
public override bool IsGenericTypeDefinition { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsGenericTypeDefinition
MetadataToken
Declaration
public override int MetadataToken { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Overrides
System.Reflection.MemberInfo.MetadataToken
Module
Declaration
public override Module Module { get; }
Property Value
Type | Description |
---|---|
System.Reflection.Module |
Overrides
System.Type.Module
Name
Declaration
public override string Name { get; }
Property Value
Type | Description |
---|---|
System.String |
Overrides
System.Reflection.MemberInfo.Name
Namespace
Declaration
public override string Namespace { get; }
Property Value
Type | Description |
---|---|
System.String |
Overrides
System.Type.Namespace
UnderlyingSystemType
Declaration
public override Type UnderlyingSystemType { get; }
Property Value
Type | Description |
---|---|
System.Type |
Overrides
System.Type.UnderlyingSystemType
Methods
GetArrayRank()
Declaration
public override int GetArrayRank()
Returns
Type | Description |
---|---|
System.Int32 |
Overrides
System.Type.GetArrayRank()
GetAttributeFlagsImpl()
Declaration
protected override TypeAttributes GetAttributeFlagsImpl()
Returns
Type | Description |
---|---|
System.Reflection.TypeAttributes |
Overrides
System.Type.GetAttributeFlagsImpl()
GetConstructorImpl(BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
Declaration
protected override ConstructorInfo GetConstructorImpl(BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr | |
System.Reflection.Binder | binder | |
System.Reflection.CallingConventions | callConvention | |
System.Type[] | types | |
System.Reflection.ParameterModifier[] | modifiers |
Returns
Type | Description |
---|---|
System.Reflection.ConstructorInfo |
Overrides
System.Type.GetConstructorImpl(System.Reflection.BindingFlags, System.Reflection.Binder, System.Reflection.CallingConventions, System.Type[], System.Reflection.ParameterModifier[])
GetConstructors(BindingFlags)
Declaration
public override ConstructorInfo[] GetConstructors(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.ConstructorInfo[] |
Overrides
System.Type.GetConstructors(System.Reflection.BindingFlags)
GetCustomAttributes(Boolean)
Declaration
public override object[] GetCustomAttributes(bool inherit)
Parameters
Type | Name | Description |
---|---|---|
System.Boolean | inherit |
Returns
Type | Description |
---|---|
System.Object[] |
Overrides
System.Reflection.MemberInfo.GetCustomAttributes(System.Boolean)
GetCustomAttributes(Type, Boolean)
Declaration
public override object[] GetCustomAttributes(Type attributeType, bool inherit)
Parameters
Type | Name | Description |
---|---|---|
System.Type | attributeType | |
System.Boolean | inherit |
Returns
Type | Description |
---|---|
System.Object[] |
Overrides
System.Reflection.MemberInfo.GetCustomAttributes(System.Type, System.Boolean)
GetElementType()
Declaration
public override Type GetElementType()
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.GetElementType()
GetEvent(String, BindingFlags)
Declaration
public override EventInfo GetEvent(string name, BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.EventInfo |
Overrides
System.Type.GetEvent(System.String, System.Reflection.BindingFlags)
GetEvents(BindingFlags)
Declaration
public override EventInfo[] GetEvents(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.EventInfo[] |
Overrides
System.Type.GetEvents(System.Reflection.BindingFlags)
GetField(String, BindingFlags)
Declaration
public override FieldInfo GetField(string name, BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.FieldInfo |
Overrides
System.Type.GetField(System.String, System.Reflection.BindingFlags)
GetFields(BindingFlags)
Declaration
public override FieldInfo[] GetFields(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.FieldInfo[] |
Overrides
System.Type.GetFields(System.Reflection.BindingFlags)
GetGenericArguments()
Declaration
public override Type[] GetGenericArguments()
Returns
Type | Description |
---|---|
System.Type[] |
Overrides
System.Type.GetGenericArguments()
GetGenericTypeDefinition()
Declaration
public override Type GetGenericTypeDefinition()
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.GetGenericTypeDefinition()
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
System.Int32 |
Overrides
System.Type.GetHashCode()
GetInterface(String, Boolean)
Declaration
public override Type GetInterface(string name, bool ignoreCase)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Boolean | ignoreCase |
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.GetInterface(System.String, System.Boolean)
GetInterfaces()
Declaration
public override Type[] GetInterfaces()
Returns
Type | Description |
---|---|
System.Type[] |
Overrides
System.Type.GetInterfaces()
GetMember(String, BindingFlags)
Declaration
public override MemberInfo[] GetMember(string name, BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.MemberInfo[] |
Overrides
System.Type.GetMember(System.String, System.Reflection.BindingFlags)
GetMembers(BindingFlags)
Declaration
public override MemberInfo[] GetMembers(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.MemberInfo[] |
Overrides
System.Type.GetMembers(System.Reflection.BindingFlags)
GetMethodImpl(String, BindingFlags, Binder, CallingConventions, Type[], ParameterModifier[])
Declaration
protected override MethodInfo GetMethodImpl(string name, BindingFlags bindingAttr, Binder binder, CallingConventions callConvention, Type[] types, ParameterModifier[] modifiers)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr | |
System.Reflection.Binder | binder | |
System.Reflection.CallingConventions | callConvention | |
System.Type[] | types | |
System.Reflection.ParameterModifier[] | modifiers |
Returns
Type | Description |
---|---|
System.Reflection.MethodInfo |
Overrides
System.Type.GetMethodImpl(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Reflection.CallingConventions, System.Type[], System.Reflection.ParameterModifier[])
GetMethods(BindingFlags)
Declaration
public override MethodInfo[] GetMethods(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.MethodInfo[] |
Overrides
System.Type.GetMethods(System.Reflection.BindingFlags)
GetNestedType(String, BindingFlags)
Declaration
public override Type GetNestedType(string name, BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.GetNestedType(System.String, System.Reflection.BindingFlags)
GetNestedTypes(BindingFlags)
Declaration
public override Type[] GetNestedTypes(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Type[] |
Overrides
System.Type.GetNestedTypes(System.Reflection.BindingFlags)
GetProperties(BindingFlags)
Declaration
public override PropertyInfo[] GetProperties(BindingFlags bindingAttr)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.BindingFlags | bindingAttr |
Returns
Type | Description |
---|---|
System.Reflection.PropertyInfo[] |
Overrides
System.Type.GetProperties(System.Reflection.BindingFlags)
GetPropertyImpl(String, BindingFlags, Binder, Type, Type[], ParameterModifier[])
Declaration
protected override PropertyInfo GetPropertyImpl(string name, BindingFlags bindingAttr, Binder binder, Type returnType, Type[] types, ParameterModifier[] modifiers)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | bindingAttr | |
System.Reflection.Binder | binder | |
System.Type | returnType | |
System.Type[] | types | |
System.Reflection.ParameterModifier[] | modifiers |
Returns
Type | Description |
---|---|
System.Reflection.PropertyInfo |
Overrides
System.Type.GetPropertyImpl(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Type, System.Type[], System.Reflection.ParameterModifier[])
HasElementTypeImpl()
Declaration
protected override bool HasElementTypeImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.HasElementTypeImpl()
InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[])
Declaration
public override object InvokeMember(string name, BindingFlags invokeAttr, Binder binder, object target, object[] args, ParameterModifier[] modifiers, CultureInfo culture, string[] namedParameters)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | |
System.Reflection.BindingFlags | invokeAttr | |
System.Reflection.Binder | binder | |
System.Object | target | |
System.Object[] | args | |
System.Reflection.ParameterModifier[] | modifiers | |
System.Globalization.CultureInfo | culture | |
System.String[] | namedParameters |
Returns
Type | Description |
---|---|
System.Object |
Overrides
System.Type.InvokeMember(System.String, System.Reflection.BindingFlags, System.Reflection.Binder, System.Object, System.Object[], System.Reflection.ParameterModifier[], System.Globalization.CultureInfo, System.String[])
IsArrayImpl()
Declaration
protected override bool IsArrayImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsArrayImpl()
IsByRefImpl()
Declaration
protected override bool IsByRefImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsByRefImpl()
IsCOMObjectImpl()
Declaration
protected override bool IsCOMObjectImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsCOMObjectImpl()
IsDefined(Type, Boolean)
Declaration
public override bool IsDefined(Type attributeType, bool inherit)
Parameters
Type | Name | Description |
---|---|---|
System.Type | attributeType | |
System.Boolean | inherit |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Reflection.MemberInfo.IsDefined(System.Type, System.Boolean)
IsPointerImpl()
Declaration
protected override bool IsPointerImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsPointerImpl()
IsPrimitiveImpl()
Declaration
protected override bool IsPrimitiveImpl()
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
System.Type.IsPrimitiveImpl()
MakeArrayType()
Declaration
public override Type MakeArrayType()
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.MakeArrayType()
MakeByRefType()
Declaration
public override Type MakeByRefType()
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.MakeByRefType()
MakePointerType()
Declaration
public override Type MakePointerType()
Returns
Type | Description |
---|---|
System.Type |
Overrides
System.Type.MakePointerType()
ToString()
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
System.String |
Overrides
System.Type.ToString()
Explicit Interface Implementations
IReflectionInfo.GetReflectionProperty(Int32)
Declaration
object IReflectionInfo.GetReflectionProperty(int id)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | id |
Returns
Type | Description |
---|---|
System.Object |
Implements
System.Reflection.ICustomAttributeProvider
System.Runtime.InteropServices._MemberInfo
System.Runtime.InteropServices._Type
System.Reflection.IReflect