CsEntity.h File Reference


Namespaces

namespace  HashString

Enumerations

enum  cs_entity {
  ent_class, ent_struct, ent_interface, ent_enum,
  ent_delegate, ent_namespace, ent_constant, ent_variable,
  ent_method, ent_property, ent_event, ent_formal_parameter,
  ent_formal_parameter_list, ent_block_variable, ent_block, ent_local_constant,
  ent_local_variable, ent_end
}
 Entity type enumeration. More...
enum  cs_entity_access {
  ac_compiler_controlled, ac_public, ac_protected, ac_private,
  ac_internal, ac_protected_internal, ac_protected_and_internal
}
 Access to entity enumeration. More...
enum  entity_flags {
  f_error = 0x0001, f_generated = 0x0002, f_compiler_attribute = 0x0004, f_varargs = 0x0008,
  ft_declared = 0x4000, ft_used_before_declared = 0x8000, f_metadatamask = 0xfffffff8, f_event_SpecialName = 0x0200,
  f_event_RTSpecialName = 0x0400, f_field_Static = 0x0010, f_field_InitOnly = 0x0020, f_field_Literal = 0x0040,
  f_field_NotSerialized = 0x0080, f_field_HasFieldRVA = 0x0100, f_field_SpecialName = 0x0200, f_field_RTSpecialName = 0x0400,
  f_field_HasFieldMarshal = 0x1000, f_field_PInvokeImpl = 0x2000, f_field_HasDefault = 0x8000, f_method_UnmanagedExport = 0x0008,
  f_method_Static = 0x0010, f_method_Final = 0x0020, f_method_Virtual = 0x0040, f_method_HideBySig = 0x0080,
  f_method_VtableLayoutMask = 0x0000, f_method_ReuseSlot = 0x0000, f_method_NewSlot = 0x0100, f_method_Abstract = 0x0400,
  f_method_SpecialName = 0x0800, f_method_RTSpecialName = 0x1000, f_method_PInvokeImplementation = 0x2000, f_method_HasSecurity = 0x4000,
  f_method_RequireSecObject = 0x8000, f_type_LayoutMask = 0x000018, f_type_AutoLayout = 0x000000, f_type_SequentialLayout = 0x000008,
  f_type_ExplicitLayout = 0x000010, f_type_ClassSemanticsMask = 0x000020, f_type_Class = 0x000000, f_type_Interface = 0x000020,
  f_type_Abstract = 0x000080, f_type_Sealed = 0x000100, f_type_SpecialName = 0x000400, f_type_RTSpecialName = 0x000800,
  f_type_Import = 0x001000, f_type_Serializable = 0x002000, f_type_StringFormatMask = 0x030000, f_type_AnsiClass = 0x000000,
  f_type_UnicodeClass = 0x010000, f_type_AutoClass = 0x020000, f_type_HasSecurity = 0x040000, f_type_BeforeFieldInit = 0x100000
}
enum  cs_entity_type {
  et_unknown, et_void, et_boolean, et_char,
  et_int8, et_uint8, et_int16, et_uint16,
  et_int32, et_uint32, et_int64, et_uint64,
  et_float32, et_float64, et_string, et_ptr,
  et_byref, et_valuetype, et_class, et_array,
  et_typedbyref, et_intptr, et_uintptr, et_fnptr,
  et_object, et_literal_null, et_arglist, et_error
}
enum  cs_entity_type_specifier { ets_empty, ets_pointer, ets_array }
 Entity type specifier enumeration. More...
enum  cs_formal_parameter_kind { fpk_empty = 0, fpk_in, fpk_out, fpk_inout }
 [ECMA-335, 22.1.12] More...

Enumeration Type Documentation

enum cs_entity
 

Entity type enumeration.

Enumeration values:
ent_class  CsEntityClass.
ent_struct  CsEntityStruct.
ent_interface  CsEntityInterface.
ent_enum  CsEntityEnum.
ent_delegate  CsEntityDelegate.
ent_namespace  CsEntityNamespace.
ent_constant  CsEntityConstant.
ent_variable  CsEntityVariable.
ent_method  CsEntityMethod.
ent_property  CsEntityProperty.
ent_event  CsEntityEvent.
ent_formal_parameter  CsEntityFormalParameter.
ent_formal_parameter_list  CsEntityFormalParameterList.
ent_block_variable  CsEntityBlockVariable.
ent_block  CsEntityBlock.
ent_local_constant  CsEntityLocalConstant.
ent_local_variable  CsEntityLocalVariable.
ent_end 

enum cs_entity_access
 

Access to entity enumeration.

Enumeration values:
ac_compiler_controlled 
ac_public 
ac_protected 
ac_private 
ac_internal 
ac_protected_internal 
ac_protected_and_internal 

enum cs_entity_type
 

Enumeration values:
et_unknown  Undefined type.
et_void  ELEMENT_TYPE_VOID.
et_boolean  ELEMENT_TYPE_BOOLEAN, System.Boolean.
et_char  ELEMENT_TYPE_CHAR, System.Char.
et_int8  ELEMENT_TYPE_I1, System.SByte.
et_uint8  ELEMENT_TYPE_U1, System.Byte.
et_int16  ELEMENT_TYPE_I2, System.Short.
et_uint16  ELEMENT_TYPE_U2, System.UShort.
et_int32  ELEMENT_TYPE_I4, System.Int.
et_uint32  ELEMENT_TYPE_U4, System.UInt.
et_int64  ELEMENT_TYPE_I8, System.Long.
et_uint64  ELEMENT_TYPE_U8, System.ULong.
et_float32  ELEMENT_TYPE_R4, System.Float.
et_float64  ELEMENT_TYPE_R8, System.Double.
et_string  ELEMENT_TYPE_STRING, System.String.
et_ptr  ELEMENT_TYPE_PTR, pointer to type.
et_byref  ELEMENT_TYPE_BYREF, reference to type.
et_valuetype  ELEMENT_TYPE_VALUETYPE, struct.
et_class  ELEMENT_TYPE_CLASS, class.
et_array  ELEMENT_TYPE_ARRAY, array of type.
et_typedbyref  ELEMENT_TYPE_TYPEDBYREF, System.Type.
et_intptr  ELEMENT_TYPE_I, System.IntPtr.
et_uintptr  ELEMENT_TYPE_U, System.UintPtr.
et_fnptr  ELEMENT_TYPE_FNPTR, pointer to method.
et_object  ELEMENT_TYPE_OBJECT, System.Object.
et_literal_null  Special type for null literal.
et_arglist  Special type for __arglist.
et_error  Used for catch erroneous operators (for internal purposes only).

enum cs_entity_type_specifier
 

Entity type specifier enumeration.

Enumeration values:
ets_empty  Simple type specifier.
ets_pointer  Pointer type specifier.
ets_array  Array type specifier.

enum cs_formal_parameter_kind
 

[ECMA-335, 22.1.12]

Enumeration values:
fpk_empty 
fpk_in 
fpk_out 
fpk_inout 

enum entity_flags
 

Enumeration contains flags for internal purposes and metadata flags described in ECMA-335.

Enumeration values:
f_error 
f_generated 
f_compiler_attribute 
f_varargs 
ft_declared 
ft_used_before_declared 
f_metadatamask 
f_event_SpecialName  Event is special.
f_event_RTSpecialName  CLI provides 'special' behavior, depending upon the name of the event.
f_field_Static  Defined on type, else per instance.
f_field_InitOnly  Field may only be initialized, not written to after init.
f_field_Literal  Value is compile time constant.
f_field_NotSerialized  Field does not have to be serialized when type is remoted.
f_field_HasFieldRVA  Field has RVA.
f_field_SpecialName  Field is special.
f_field_RTSpecialName  CLI provides 'special' behavior, depending upon the name of the field.
f_field_HasFieldMarshal  Field has marshalling information.
f_field_PInvokeImpl  Implementation is forwarded through PInvoke.
f_field_HasDefault  Field has default.
f_method_UnmanagedExport  Reserved: shall be zero for conforming implementations.
f_method_Static  Defined on type, else per instance.
f_method_Final  Method may not be overridden.
f_method_Virtual  Method is virtual.
f_method_HideBySig  Method hides by name+sig, else just by name.
f_method_VtableLayoutMask  Use this mask to retrieve vtable attributes.
f_method_ReuseSlot  Method reuses existing slot in vtable.
f_method_NewSlot  Method always gets a new slot in the vtable.
f_method_Abstract  Method does not provide an implementation.
f_method_SpecialName  Method is special.
f_method_RTSpecialName  CLI provides 'special' behavior, depending upon the name of the method.
f_method_PInvokeImplementation  Implementation is forwarded through PInvoke.
f_method_HasSecurity  Method has security associate with it.
f_method_RequireSecObject  Method calls another method containing security code.
f_type_LayoutMask  Use this mask to retrieve class layout information.
f_type_AutoLayout  Class fields are auto-laid out.
f_type_SequentialLayout  Class fields are laid out sequentially.
f_type_ExplicitLayout  Layout is supplied explicitly.
f_type_ClassSemanticsMask  Use this mask to retrive class semantics information.
f_type_Class  Type is a class.
f_type_Interface  Type is an interface.
f_type_Abstract  Class is abstract.
f_type_Sealed  Class cannot be extended.
f_type_SpecialName  Class name is special.
f_type_RTSpecialName  CLI provides 'special' behavior, depending upon the name of the Type.
f_type_Import  Class/Interface is imported.
f_type_Serializable  Class is serializable.
f_type_StringFormatMask  Use this mask to retrieve string information for native interop.
f_type_AnsiClass  LPSTR is interpreted as ANSI.
f_type_UnicodeClass  LPSTR is interpreted as Unicode.
f_type_AutoClass  LPSTR is interpreted automatically.
f_type_HasSecurity  Type has security associate with it.
f_type_BeforeFieldInit  Initialize the class before first static field access.

© 2005 metaspec