System::Reflection Namespace Reference

Classes

class  Assembly
 
class  AssemblyName
 
class  AssemblyTypeRegistration
 
class  AssemblyTypeRegistrationBase
 Base type for singletons to register type in executing assembly. More...
 
class  ConstructorInfo
 Provides access to constructor metadata. More...
 
class  Details_ReflectionTypeLoadException
 
class  Details_TargetInvocationException
 
class  FieldInfo
 Discovers the attributes of a field and provides access to field metadata. More...
 
class  MemberInfo
 
class  MethodBase
 
class  MethodInfo
 Represents information on class method. More...
 
class  PropertyInfo
 Represents property information. More...
 

Typedefs

using ReflectionTypeLoadException = System::ExceptionWrapper< Details_ReflectionTypeLoadException >
 
using TargetInvocationException = System::ExceptionWrapper< Details_TargetInvocationException >
 

Enumerations

enum  BindingFlags {
  BindingFlags::Default = 0x00, BindingFlags::IgnoreCase = 0x01, BindingFlags::DeclaredOnly = 0x02, BindingFlags::Instance = 0x04,
  BindingFlags::Static = 0x08, BindingFlags::Public = 0x10, BindingFlags::NonPublic = 0x20, BindingFlags::FlattenHierarchy = 0x40,
  BindingFlags::InvokeMethod = 0x0100, BindingFlags::CreateInstance = 0x0200, BindingFlags::GetField = 0x0400, BindingFlags::SetField = 0x0800,
  BindingFlags::GetProperty = 0x1000, BindingFlags::SetProperty = 0x2000, BindingFlags::PutDispProperty = 0x4000, BindingFlags::PutRefDispProperty = 0x8000,
  BindingFlags::ExactBinding = 0x010000, BindingFlags::SuppressChangeType = 0x020000, BindingFlags::OptionalParamBinding = 0x040000, BindingFlags::IgnoreReturn = 0x01000000
}
 Degines members and types lookup modes and bindings. More...
 
enum  FieldAttributes {
  FieldAttributes::FieldAccessMask = 0x0007, FieldAttributes::PrivateScope = 0x0000, FieldAttributes::Private = 0x0001, FieldAttributes::FamANDAssem = 0x0002,
  FieldAttributes::Assembly = 0x0003, FieldAttributes::Family = 0x0004, FieldAttributes::FamORAssem = 0x0005, FieldAttributes::Public = 0x0006,
  FieldAttributes::Static = 0x0010, FieldAttributes::InitOnly = 0x0020, FieldAttributes::Literal = 0x0040, FieldAttributes::NotSerialized = 0x0080,
  FieldAttributes::SpecialName = 0x0200, FieldAttributes::PinvokeImpl = 0x2000, FieldAttributes::ReservedMask = 0x9500, FieldAttributes::RTSpecialName = 0x0400,
  FieldAttributes::HasFieldMarshal = 0x1000, FieldAttributes::HasDefault = 0x8000, FieldAttributes::HasFieldRVA = 0x0100
}
 Reflected field attributes. More...
 
enum  MemberTypes {
  MemberTypes::Constructor = 1, MemberTypes::Event = 2, MemberTypes::Field = 4, MemberTypes::Method = 8,
  MemberTypes::Property = 16, MemberTypes::TypeInfo = 32, MemberTypes::Custom = 64, MemberTypes::NestedType = 128,
  MemberTypes::All = 191
}
 Marks each type of member. More...
 

Typedef Documentation

◆ ReflectionTypeLoadException

ReflectionTypeLoadException is thrown by the Module.GetTypes method if any of the classes in a module fail to load. Never wrap the ReflectionTypeLoadException class instances into System::SmartPtr.

◆ TargetInvocationException

TargetInvocationException is thrown by methods invoked through reflection. Never wrap the TargetInvocationException class instances into System::SmartPtr.

Enumeration Type Documentation

◆ BindingFlags

Degines members and types lookup modes and bindings.

Enumerator
Default 

No special options.

IgnoreCase 

Ignore case of name when looking for item.

DeclaredOnly 

Only look for members declared in type and not in basetypes.

Instance 

Look through instance members.

Static 

Look through static members.

Public 

Look through public members.

NonPublic 

Look through non-public members.

FlattenHierarchy 

Look through basetype public and protected static members.

InvokeMethod 

Invokes method.

CreateInstance 

Creates reflected type instance.

GetField 

Gets field value.

SetField 

Sets field value.

GetProperty 

Gets property value.

SetProperty 

Sets property value.

PutDispProperty 

Puts COM property.

PutRefDispProperty 

Puts COM reference property.

ExactBinding 

Type binding must be exact, without any type changes.

SuppressChangeType 

Not supported.

OptionalParamBinding 

Selects overload based on arguments count.

IgnoreReturn 

Ignores COM interop return value.

◆ FieldAttributes

Reflected field attributes.

Enumerator
FieldAccessMask 

Member access mask. Use this mask to retrieve accessibility information.

PrivateScope 

Non-referancable members.

Private 

Private members.

FamANDAssem 

Private and assembly-scoped members.

Assembly 

Assembly-scoped members.

Family 

Members accessible by type and subtypes.

FamORAssem 

Members accessible by type, sub-types and assembly.

Public 

Members accessible by anyone.

Static 

Static members as opposite to instance members.

InitOnly 

Const members that can only be initialized but not changed.

Literal 

Compile time constant members.

NotSerialized 

Not serialized members.

SpecialName 

Special field of one of the below names.

PinvokeImpl 

Interop forwarded implementation.

ReservedMask 

Reserved flags for runtime use only.

RTSpecialName 

Runtim eshould check name encoding.

HasFieldMarshal 

Marshalling information is present.

HasDefault 

Default value is present.

HasFieldRVA 

RVA is present.

◆ MemberTypes

Marks each type of member.

Enumerator
Constructor 

Specifies that the member is a constructor.

Event 

Specifies that the member is an event.

Field 

Specifies that the member is a field.

Method 

Specifies that the member is a method.

Property 

Specifies that the member is a property.

TypeInfo 

Specifies that the member is a type.

Custom 

Specifies that the member is a custom member type.

NestedType 

Specifies that the member is a nested type.

All 

Specifies all member types.