Documentation ¶
Overview ¶
Code generated by mk_attributes.go, DO NOT EDIT.
Code generated by mk_composite_index.go, DO NOT EDIT.
Code generated by mk_from_row.go, DO NOT EDIT.
Index ¶
- type Assembly
- type AssemblyFlags
- type AssemblyHashAlgorithm
- type AssemblyOS
- type AssemblyProcessor
- type AssemblyRef
- type AssemblyRefOS
- type AssemblyRefProcessor
- type Blob
- type ClassLayout
- type Constant
- type Context
- func (t *Context) Blob(tt md.TableType, row, column uint32) (Blob, error)
- func (t *Context) List(tt md.TableType, row, column uint32, target md.TableType) (List, error)
- func (t *Context) ResolveTypeDefOrRefName(ref TypeDefOrRef) (namespace, name string, err error)
- func (t *Context) RowCount(tt md.TableType) uint32
- func (t *Context) Signature(tt md.TableType, row, column uint32) (Signature, error)
- func (t *Context) String(tt md.TableType, row, column uint32) (string, error)
- func (t *Context) Table(tt md.TableType) Table
- func (t *Context) Uint32(tt md.TableType, row, column uint32) (uint32, error)
- func (t *Context) Uint64(tt md.TableType, row, column uint32) (uint64, error)
- type CustomAttribute
- type CustomAttributeType
- func (t CustomAttributeType) Row(c *Context) (Row, bool)
- func (t *CustomAttributeType) Set(tt md.TableType, idx uint32)
- func (t CustomAttributeType) String() string
- func (t CustomAttributeType) Table() (md.TableType, bool)
- func (t CustomAttributeType) TableIndex() uint32
- func (t CustomAttributeType) Tag() uint32
- type DeclSecurity
- type Element
- type ElementType
- type ElementTypeArray
- type ElementTypeGenericMethodVar
- type ElementTypeGenericTypeVar
- type ElementTypeKind
- type ElementTypeSZArray
- type ElementTypeTypeDef
- type Event
- type EventAttributes
- type EventMap
- type ExportedType
- type Field
- type FieldAttributes
- func (f FieldAttributes) Assembly() bool
- func (f FieldAttributes) CompilerControlled() bool
- func (f FieldAttributes) FamANDAssem() bool
- func (f FieldAttributes) FamORAssem() bool
- func (f FieldAttributes) Family() bool
- func (f FieldAttributes) HasDefault() bool
- func (f FieldAttributes) HasFieldMarshal() bool
- func (f FieldAttributes) HasFieldRVA() bool
- func (f FieldAttributes) InitOnly() bool
- func (f FieldAttributes) Literal() bool
- func (f FieldAttributes) NotSerialized() bool
- func (f FieldAttributes) PInvokeImpl() bool
- func (f FieldAttributes) Private() bool
- func (f FieldAttributes) Public() bool
- func (f FieldAttributes) RTSpecialName() bool
- func (f FieldAttributes) SpecialName() bool
- func (f FieldAttributes) Static() bool
- type FieldLayout
- type FieldMarshal
- type FieldRVA
- type FieldSignature
- type File
- type FileAttributes
- type GUID
- type GenericParam
- type GenericParamAttributes
- func (f GenericParamAttributes) Contravariant() bool
- func (f GenericParamAttributes) Covariant() bool
- func (f GenericParamAttributes) DefaultConstructorConstraint() bool
- func (f GenericParamAttributes) None() bool
- func (f GenericParamAttributes) NotNullableValueTypeConstraint() bool
- func (f GenericParamAttributes) ReferenceTypeConstraint() bool
- type GenericParamConstraint
- type HasConstant
- type HasCustomAttribute
- func (t HasCustomAttribute) Row(c *Context) (Row, bool)
- func (t *HasCustomAttribute) Set(tt md.TableType, idx uint32)
- func (t HasCustomAttribute) String() string
- func (t HasCustomAttribute) Table() (md.TableType, bool)
- func (t HasCustomAttribute) TableIndex() uint32
- func (t HasCustomAttribute) Tag() uint32
- type HasDeclSecurity
- type HasFieldMarshall
- type HasSemantics
- type ImplMap
- type Implementation
- type Index
- type InterfaceImpl
- type List
- type ManifestResource
- type ManifestResourceAttributes
- type MemberForwarded
- type MemberRef
- type MemberRefParent
- type MethodAttributes
- func (f MethodAttributes) Abstract() bool
- func (f MethodAttributes) Assembly() bool
- func (f MethodAttributes) CompilerControlled() bool
- func (f MethodAttributes) FamANDAssem() bool
- func (f MethodAttributes) FamORAssem() bool
- func (f MethodAttributes) Family() bool
- func (f MethodAttributes) Final() bool
- func (f MethodAttributes) HasSecurity() bool
- func (f MethodAttributes) HideBySig() bool
- func (f MethodAttributes) NewSlot() bool
- func (f MethodAttributes) PInvokeImpl() bool
- func (f MethodAttributes) Private() bool
- func (f MethodAttributes) Public() bool
- func (f MethodAttributes) RTSpecialName() bool
- func (f MethodAttributes) RequireSecObject() bool
- func (f MethodAttributes) ReuseSlot() bool
- func (f MethodAttributes) SpecialName() bool
- func (f MethodAttributes) Static() bool
- func (f MethodAttributes) Strict() bool
- func (f MethodAttributes) UnmanagedExport() bool
- func (f MethodAttributes) Virtual() bool
- type MethodDef
- type MethodDefOrRef
- type MethodImpl
- type MethodImplAttributes
- func (f MethodImplAttributes) ForwardRef() bool
- func (f MethodImplAttributes) IL() bool
- func (f MethodImplAttributes) InternalCall() bool
- func (f MethodImplAttributes) Managed() bool
- func (f MethodImplAttributes) MaxMethodImplVal() bool
- func (f MethodImplAttributes) Native() bool
- func (f MethodImplAttributes) NoInlining() bool
- func (f MethodImplAttributes) NoOptimization() bool
- func (f MethodImplAttributes) OPTIL() bool
- func (f MethodImplAttributes) PreserveSig() bool
- func (f MethodImplAttributes) Runtime() bool
- func (f MethodImplAttributes) Synchronized() bool
- func (f MethodImplAttributes) Unmanaged() bool
- type MethodSemantics
- type MethodSemanticsAttributes
- type MethodSignature
- type MethodSpec
- type Module
- type ModuleRef
- type NestedClass
- type PInvokeAttributes
- func (f PInvokeAttributes) CallConvCdecl() bool
- func (f PInvokeAttributes) CallConvFastcall() bool
- func (f PInvokeAttributes) CallConvPlatformapi() bool
- func (f PInvokeAttributes) CallConvStdcall() bool
- func (f PInvokeAttributes) CallConvThiscall() bool
- func (f PInvokeAttributes) CharSetAnsi() bool
- func (f PInvokeAttributes) CharSetAuto() bool
- func (f PInvokeAttributes) CharSetNotSpec() bool
- func (f PInvokeAttributes) CharSetUnicode() bool
- func (f PInvokeAttributes) NoMangle() bool
- func (f PInvokeAttributes) SupportsLastError() bool
- type Param
- type ParamAttributes
- type Property
- type PropertyAttributes
- type PropertyMap
- type ResolutionScope
- type Row
- func (t *Row) Blob(column uint32) (Blob, error)
- func (t *Row) List(column uint32, target md.TableType) (List, error)
- func (t *Row) Signature(column uint32) (Signature, error)
- func (t *Row) String(column uint32) (string, error)
- func (t *Row) Uint32(column uint32) (uint32, error)
- func (t *Row) Uint64(column uint32) (uint64, error)
- type Signature
- type SignatureReader
- func (s *SignatureReader) Field(file *Context) (FieldSignature, error)
- func (s *SignatureReader) Method(file *Context) (MethodSignature, error)
- func (s *SignatureReader) NextElement(c *Context) (e Element, _ error)
- func (s *SignatureReader) NextIs(expect uint32) bool
- func (s *SignatureReader) Peek() (value uint32, size int, ok bool)
- func (s *SignatureReader) Read() (value uint32, ok bool)
- type Table
- type TypeAttributes
- func (f TypeAttributes) Abstract() bool
- func (f TypeAttributes) AnsiClass() bool
- func (f TypeAttributes) AutoClass() bool
- func (f TypeAttributes) AutoLayout() bool
- func (f TypeAttributes) BeforeFieldInit() bool
- func (f TypeAttributes) Class() bool
- func (f TypeAttributes) CustomFormatClass() bool
- func (f TypeAttributes) ExplicitLayout() bool
- func (f TypeAttributes) HasSecurity() bool
- func (f TypeAttributes) Import() bool
- func (f TypeAttributes) Interface() bool
- func (f TypeAttributes) IsTypeForwarder() bool
- func (f TypeAttributes) NestedAssembly() bool
- func (f TypeAttributes) NestedFamANDAssem() bool
- func (f TypeAttributes) NestedFamORAssem() bool
- func (f TypeAttributes) NestedFamily() bool
- func (f TypeAttributes) NestedPrivate() bool
- func (f TypeAttributes) NestedPublic() bool
- func (f TypeAttributes) NotPublic() bool
- func (f TypeAttributes) Public() bool
- func (f TypeAttributes) RTSpecialName() bool
- func (f TypeAttributes) Sealed() bool
- func (f TypeAttributes) SequentialLayout() bool
- func (f TypeAttributes) Serializable() bool
- func (f TypeAttributes) SpecialName() bool
- func (f TypeAttributes) UnicodeClass() bool
- type TypeDef
- type TypeDefOrRef
- type TypeOrMethodDef
- type TypeRef
- type TypeSpec
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Assembly ¶
type Assembly struct { HashAlgId AssemblyHashAlgorithm Version uint64 Flags AssemblyFlags PublicKey Blob Name string Culture string }
Assembly is a II.22.2 Assembly representation.
type AssemblyFlags ¶
type AssemblyFlags uint32
AssemblyFlags represents II.23.1.2 Values for AssemblyFlags.
func (AssemblyFlags) DisableJITcompileOptimizer ¶
func (f AssemblyFlags) DisableJITcompileOptimizer() bool
DisableJITcompileOptimizer check DisableJITcompileOptimizer flag.
func (AssemblyFlags) EnableJITcompileTracking ¶
func (f AssemblyFlags) EnableJITcompileTracking() bool
EnableJITcompileTracking check EnableJITcompileTracking flag.
func (AssemblyFlags) PublicKey ¶
func (f AssemblyFlags) PublicKey() bool
PublicKey check PublicKey flag. Denotes: The assembly reference holds the full (unhashed)public key.
func (AssemblyFlags) Retargetable ¶
func (f AssemblyFlags) Retargetable() bool
Retargetable check Retargetable flag. Denotes: The implementation of this assembly used at runtime isnot expected to match the version seen at compile time.
type AssemblyHashAlgorithm ¶
type AssemblyHashAlgorithm uint32
AssemblyHashAlgorithm represents II.23.1.1 Values for AssemblyHashAlgorithm.
func (AssemblyHashAlgorithm) None ¶
func (f AssemblyHashAlgorithm) None() bool
None check None flag.
func (AssemblyHashAlgorithm) SHA1 ¶
func (f AssemblyHashAlgorithm) SHA1() bool
SHA1 check SHA1 flag.
type AssemblyOS ¶
AssemblyOS is a II.22.3 AssemblyOS representation.
func (*AssemblyOS) FromRow ¶
func (f *AssemblyOS) FromRow(r Row) error
FromRow creates AssemblyOS from given Row.
type AssemblyProcessor ¶
type AssemblyProcessor struct {
Processor uint32
}
AssemblyProcessor is a II.22.4 AssemblyProcessor representation.
func (*AssemblyProcessor) FromRow ¶
func (f *AssemblyProcessor) FromRow(r Row) error
FromRow creates AssemblyProcessor from given Row.
type AssemblyRef ¶
type AssemblyRef struct { Version uint64 Flags AssemblyFlags PublicKeyOrToken Blob Name string Culture string HashValue Blob }
AssemblyRef is a II.22.5 AssemblyRef representation.
func (*AssemblyRef) FromRow ¶
func (f *AssemblyRef) FromRow(r Row) error
FromRow creates AssemblyRef from given Row.
type AssemblyRefOS ¶
type AssemblyRefOS struct { OSPlatformID uint32 OSMajorVersion uint32 OSMinorVersion uint32 AssemblyRef Index `table:"AssemblyRef"` }
AssemblyRefOS is a II.22.6 AssemblyRefOS representation.
func (*AssemblyRefOS) FromRow ¶
func (f *AssemblyRefOS) FromRow(r Row) error
FromRow creates AssemblyRefOS from given Row.
func (*AssemblyRefOS) ResolveAssemblyRef ¶
func (f *AssemblyRefOS) ResolveAssemblyRef(c *Context) (AssemblyRef, error)
ResolveAssemblyRef resolves AssemblyRef index using given Context.
type AssemblyRefProcessor ¶
AssemblyRefProcessor is a II.22.7 AssemblyRefProcessor representation.
func (*AssemblyRefProcessor) FromRow ¶
func (f *AssemblyRefProcessor) FromRow(r Row) error
FromRow creates AssemblyRefProcessor from given Row.
func (*AssemblyRefProcessor) ResolveAssemblyRef ¶
func (f *AssemblyRefProcessor) ResolveAssemblyRef(c *Context) (AssemblyRef, error)
ResolveAssemblyRef resolves AssemblyRef index using given Context.
type ClassLayout ¶
ClassLayout is a II.22.8 ClassLayout representation.
func (*ClassLayout) FromRow ¶
func (f *ClassLayout) FromRow(r Row) error
FromRow creates ClassLayout from given Row.
func (*ClassLayout) ResolveParent ¶
func (f *ClassLayout) ResolveParent(c *Context) (TypeDef, error)
ResolveParent resolves Parent index using given Context.
type Constant ¶
type Constant struct { Type ElementTypeKind Parent HasConstant Value Blob }
Constant is a II.22.9 Constant representation.
type Context ¶
type Context struct { Metadata *md.Metadata md.TablesHeader // contains filtered or unexported fields }
Context is a simple helper for accessing file heaps and tables.
func (*Context) ResolveTypeDefOrRefName ¶
func (t *Context) ResolveTypeDefOrRefName(ref TypeDefOrRef) (namespace, name string, err error)
ResolveTypeDefOrRefName resolves TypeDefOrRef name.
func (*Context) Signature ¶
Signature finds signature blob value from #Blob heap using given index column.
type CustomAttribute ¶
type CustomAttribute struct { Parent HasCustomAttribute Type CustomAttributeType Value Blob }
CustomAttribute is a II.22.10 CustomAttribute representation.
func (*CustomAttribute) FromRow ¶
func (f *CustomAttribute) FromRow(r Row) error
FromRow creates CustomAttribute from given Row.
type CustomAttributeType ¶
type CustomAttributeType uint32
CustomAttributeType represents composite index one of
Not used Not used MethodDef MemberRef Not used
table.
func CreateCustomAttributeType ¶
func CreateCustomAttributeType(tt md.TableType, idx uint32) CustomAttributeType
CreateCustomAttributeType creates new composite index from given tag and table index.
func (CustomAttributeType) Row ¶
func (t CustomAttributeType) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*CustomAttributeType) Set ¶
func (t *CustomAttributeType) Set(tt md.TableType, idx uint32)
Set sets CustomAttributeType tag and index.
func (CustomAttributeType) String ¶
func (t CustomAttributeType) String() string
String implements fmt.Stringer method.
func (CustomAttributeType) Table ¶
func (t CustomAttributeType) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (CustomAttributeType) TableIndex ¶
func (t CustomAttributeType) TableIndex() uint32
TableIndex returns CustomAttributeType index.
func (CustomAttributeType) Tag ¶
func (t CustomAttributeType) Tag() uint32
Tag returns CustomAttributeType tag. Tag table:
Not used = 0 Not used = 1 MethodDef = 2 MemberRef = 3 Not used = 4
type DeclSecurity ¶
type DeclSecurity struct { Action uint16 Parent HasDeclSecurity PermissionSet Blob }
DeclSecurity is a II.22.11 DeclSecurity representation.
func (*DeclSecurity) FromRow ¶
func (f *DeclSecurity) FromRow(r Row) error
FromRow creates DeclSecurity from given Row.
type Element ¶
type Element struct { Type ElementType Pointers int ByRef bool IsConst bool IsArray bool }
Element represents one parameter or result in Signature.
type ElementType ¶
type ElementType struct { Kind ElementTypeKind GenericParam Index `table:"GenericParam"` Array ElementTypeArray SZArray ElementTypeSZArray MethodDef Index `table:"MethodDef"` Field Index `table:"Field"` TypeDef ElementTypeTypeDef GenericTypeVar ElementTypeGenericTypeVar GenericMethodVar ElementTypeGenericMethodVar }
ElementType is a II.23.1.16 Element types used in signatures representation kind.
Only one of GenericParam, Array, SZArray, MethodDef, Field, TypeDef, GenericTypeVar, GenericMethodVar fields should be present.
func (*ElementType) FromCode ¶
func (e *ElementType) FromCode(code uint32) bool
FromCode tries to map code to ElementTypeKind.
type ElementTypeArray ¶
ElementTypeArray is a ElementType union variant structure.
type ElementTypeGenericMethodVar ¶
type ElementTypeGenericMethodVar struct {
Index uint32
}
ElementTypeGenericMethodVar is a ElementType union variant structure.
type ElementTypeGenericTypeVar ¶
type ElementTypeGenericTypeVar struct {
Index uint32
}
ElementTypeGenericTypeVar is a ElementType union variant structure.
type ElementTypeKind ¶
type ElementTypeKind uint16
ElementTypeKind is a II.23.1.16 Element types used in signatures representation kind.
const ( // ELEMENT_TYPE_END constant. ELEMENT_TYPE_END ElementTypeKind = 0x00 // ELEMENT_TYPE_VOID constant. ELEMENT_TYPE_VOID ElementTypeKind = 0x01 // ELEMENT_TYPE_BOOLEAN constant. ELEMENT_TYPE_BOOLEAN ElementTypeKind = 0x02 // ELEMENT_TYPE_CHAR constant. ELEMENT_TYPE_CHAR ElementTypeKind = 0x03 // ELEMENT_TYPE_I1 constant. ELEMENT_TYPE_I1 ElementTypeKind = 0x04 // ELEMENT_TYPE_U1 constant. ELEMENT_TYPE_U1 ElementTypeKind = 0x05 // ELEMENT_TYPE_I2 constant. ELEMENT_TYPE_I2 ElementTypeKind = 0x06 // ELEMENT_TYPE_U2 constant. ELEMENT_TYPE_U2 ElementTypeKind = 0x07 // ELEMENT_TYPE_I4 constant. ELEMENT_TYPE_I4 ElementTypeKind = 0x08 // ELEMENT_TYPE_U4 constant. ELEMENT_TYPE_U4 ElementTypeKind = 0x09 // ELEMENT_TYPE_I8 constant. ELEMENT_TYPE_I8 ElementTypeKind = 0x0a // ELEMENT_TYPE_U8 constant. ELEMENT_TYPE_U8 ElementTypeKind = 0x0b // ELEMENT_TYPE_R4 constant. ELEMENT_TYPE_R4 ElementTypeKind = 0x0c // ELEMENT_TYPE_R8 constant. ELEMENT_TYPE_R8 ElementTypeKind = 0x0d // ELEMENT_TYPE_STRING constant. ELEMENT_TYPE_STRING ElementTypeKind = 0x0e // ELEMENT_TYPE_PTR constant. ELEMENT_TYPE_PTR ElementTypeKind = 0x0f // ELEMENT_TYPE_BYREF constant. ELEMENT_TYPE_BYREF ElementTypeKind = 0x10 // ELEMENT_TYPE_VALUETYPE constant. ELEMENT_TYPE_VALUETYPE ElementTypeKind = 0x11 // ELEMENT_TYPE_CLASS constant. ELEMENT_TYPE_CLASS ElementTypeKind = 0x12 // ELEMENT_TYPE_VAR constant. ELEMENT_TYPE_VAR ElementTypeKind = 0x13 // ELEMENT_TYPE_ARRAY constant. ELEMENT_TYPE_ARRAY ElementTypeKind = 0x14 // ELEMENT_TYPE_GENERICINST constant. ELEMENT_TYPE_GENERICINST ElementTypeKind = 0x15 // ELEMENT_TYPE_TYPEDBYREF constant. ELEMENT_TYPE_TYPEDBYREF ElementTypeKind = 0x16 // ELEMENT_TYPE_I constant. ELEMENT_TYPE_I ElementTypeKind = 0x18 // ELEMENT_TYPE_U constant. ELEMENT_TYPE_U ElementTypeKind = 0x19 // ELEMENT_TYPE_FNPTR constant. ELEMENT_TYPE_FNPTR ElementTypeKind = 0x1b // ELEMENT_TYPE_OBJECT constant. ELEMENT_TYPE_OBJECT ElementTypeKind = 0x1c // ELEMENT_TYPE_SZARRAY constant. ELEMENT_TYPE_SZARRAY ElementTypeKind = 0x1d // ELEMENT_TYPE_MVAR constant. ELEMENT_TYPE_MVAR ElementTypeKind = 0x1e // ELEMENT_TYPE_CMOD_REQD constant. ELEMENT_TYPE_CMOD_REQD ElementTypeKind = 0x1f // ELEMENT_TYPE_CMOD_OPT constant. ELEMENT_TYPE_CMOD_OPT ElementTypeKind = 0x20 // ELEMENT_TYPE_INTERNAL constant. ELEMENT_TYPE_INTERNAL ElementTypeKind = 0x21 // ELEMENT_TYPE_MODIFIER constant. ELEMENT_TYPE_MODIFIER ElementTypeKind = 0x40 // ELEMENT_TYPE_SENTINEL constant. ELEMENT_TYPE_SENTINEL ElementTypeKind = 0x41 // ELEMENT_TYPE_PINNED constant. ELEMENT_TYPE_PINNED ElementTypeKind = 0x45 )
func (ElementTypeKind) String ¶
func (i ElementTypeKind) String() string
type ElementTypeSZArray ¶
type ElementTypeSZArray struct {
Elem *Element
}
ElementTypeSZArray is a ElementType union variant structure.
type ElementTypeTypeDef ¶
type ElementTypeTypeDef struct { Index TypeDefOrRef Generics []ElementType }
ElementTypeTypeDef is a ElementType union variant structure.
type Event ¶
type Event struct { EventFlags EventAttributes Name string EventType TypeDefOrRef }
Event is a II.22.13 Event representation.
type EventAttributes ¶
type EventAttributes uint16
EventAttributes represents II.23.1.4 Flags for events EventAttributes.
func (EventAttributes) RTSpecialName ¶
func (f EventAttributes) RTSpecialName() bool
RTSpecialName check RTSpecialName flag. Denotes: CLI provides 'special' behavior, depending upon the name of the event.
func (EventAttributes) SpecialName ¶
func (f EventAttributes) SpecialName() bool
SpecialName check SpecialName flag. Denotes: Event is special.
type EventMap ¶
EventMap is a II.22.12 EventMap representation.
func (*EventMap) ResolveEventList ¶
ResolveEventList resolves EventList index using given Context.
type ExportedType ¶
type ExportedType struct { Flags TypeAttributes TypeDefId uint32 TypeName string TypeNamespace string Implementation Implementation }
ExportedType is a II.22.14 ExportedType representation.
func (*ExportedType) FromRow ¶
func (f *ExportedType) FromRow(r Row) error
FromRow creates ExportedType from given Row.
type Field ¶
type Field struct { Flags FieldAttributes Name string Signature Signature }
Field is a II.22.15 Field representation.
type FieldAttributes ¶
type FieldAttributes uint16
FieldAttributes represents II.23.1.5 Flags for fields FieldAttributes.
func (FieldAttributes) Assembly ¶
func (f FieldAttributes) Assembly() bool
Assembly check Assembly flag. Denotes: Accessibly by anyone in the Assembly.
func (FieldAttributes) CompilerControlled ¶
func (f FieldAttributes) CompilerControlled() bool
CompilerControlled check CompilerControlled flag. Denotes: Member, not, referenceable.
func (FieldAttributes) FamANDAssem ¶
func (f FieldAttributes) FamANDAssem() bool
FamANDAssem check FamANDAssem flag. Denotes: Accessible by sub-types only in this Assembly.
func (FieldAttributes) FamORAssem ¶
func (f FieldAttributes) FamORAssem() bool
FamORAssem check FamORAssem flag. Denotes: Accessibly by sub-types anywhere, plus anyone in assembly.
func (FieldAttributes) Family ¶
func (f FieldAttributes) Family() bool
Family check Family flag. Denotes: Accessible only by type and sub-types.
func (FieldAttributes) HasDefault ¶
func (f FieldAttributes) HasDefault() bool
HasDefault check HasDefault flag. Denotes: Field has default.
func (FieldAttributes) HasFieldMarshal ¶
func (f FieldAttributes) HasFieldMarshal() bool
HasFieldMarshal check HasFieldMarshal flag. Denotes: Field has marshalling information.
func (FieldAttributes) HasFieldRVA ¶
func (f FieldAttributes) HasFieldRVA() bool
HasFieldRVA check HasFieldRVA flag. Denotes: Field has RVA.
func (FieldAttributes) InitOnly ¶
func (f FieldAttributes) InitOnly() bool
InitOnly check InitOnly flag. Denotes: Field can only be initialized, not written to after init.
func (FieldAttributes) Literal ¶
func (f FieldAttributes) Literal() bool
Literal check Literal flag. Denotes: Value is compile time constant.
func (FieldAttributes) NotSerialized ¶
func (f FieldAttributes) NotSerialized() bool
NotSerialized check NotSerialized flag. Denotes: Reserved (to indicate this field should not be serialized when type is remoted).
func (FieldAttributes) PInvokeImpl ¶
func (f FieldAttributes) PInvokeImpl() bool
PInvokeImpl check PInvokeImpl flag. Denotes: Implementation is forwarded through PInvoke.
func (FieldAttributes) Private ¶
func (f FieldAttributes) Private() bool
Private check Private flag. Denotes: Accessible only by the parent type.
func (FieldAttributes) Public ¶
func (f FieldAttributes) Public() bool
Public check Public flag. Denotes: Accessibly by anyone who has visibility to this scope field contract attributes.
func (FieldAttributes) RTSpecialName ¶
func (f FieldAttributes) RTSpecialName() bool
RTSpecialName check RTSpecialName flag. Denotes: CLI provides 'special' behavior, depending upon the name of the field.
func (FieldAttributes) SpecialName ¶
func (f FieldAttributes) SpecialName() bool
SpecialName check SpecialName flag. Denotes: Field is special.
func (FieldAttributes) Static ¶
func (f FieldAttributes) Static() bool
Static check Static flag. Denotes: Defined on type, else per instance.
type FieldLayout ¶
FieldLayout is a II.22.16 FieldLayout representation.
func (*FieldLayout) FromRow ¶
func (f *FieldLayout) FromRow(r Row) error
FromRow creates FieldLayout from given Row.
func (*FieldLayout) ResolveField ¶
func (f *FieldLayout) ResolveField(c *Context) (Field, error)
ResolveField resolves Field index using given Context.
type FieldMarshal ¶
type FieldMarshal struct { Parent Index // Should be HasFieldMarshal, but ECMA-335 6th-edition does not define it :(. NativeType Blob }
FieldMarshal is a II.22.17 FieldMarshal representation.
func (*FieldMarshal) FromRow ¶
func (f *FieldMarshal) FromRow(r Row) error
FromRow creates FieldMarshal from given Row.
type FieldRVA ¶
FieldRVA is a II.22.18 FieldRVA representation.
type FieldSignature ¶
type FieldSignature struct {
Field Element
}
FieldSignature is a II.23.2.4 FieldSig representation.
type File ¶
type File struct { Flags FileAttributes Name string HashValue Blob }
File is a II.22.19 File representation.
type FileAttributes ¶
type FileAttributes uint32
FileAttributes represents II.23.1.6 Flags for files FileAttributes.
func (FileAttributes) ContainsMetaData ¶
func (f FileAttributes) ContainsMetaData() bool
ContainsMetaData check ContainsMetaData flag. Denotes: This is not a resource file.
func (FileAttributes) ContainsNoMetaData ¶
func (f FileAttributes) ContainsNoMetaData() bool
ContainsNoMetaData check ContainsNoMetaData flag. Denotes: This is a resource file or other non-metadata-containing file.
type GenericParam ¶
type GenericParam struct { Number uint16 Flags GenericParamAttributes Owner TypeOrMethodDef Name string }
GenericParam is a II.22.20 GenericParam representation.
func (*GenericParam) FromRow ¶
func (f *GenericParam) FromRow(r Row) error
FromRow creates GenericParam from given Row.
type GenericParamAttributes ¶
type GenericParamAttributes uint16
GenericParamAttributes represents II.23.1.7 Flags for Generic Parameters GenericParamAttributes.
func (GenericParamAttributes) Contravariant ¶
func (f GenericParamAttributes) Contravariant() bool
Contravariant check Contravariant flag. Denotes: The generic parameter is contravariant.
func (GenericParamAttributes) Covariant ¶
func (f GenericParamAttributes) Covariant() bool
Covariant check Covariant flag. Denotes: The generic parameter is covariant.
func (GenericParamAttributes) DefaultConstructorConstraint ¶
func (f GenericParamAttributes) DefaultConstructorConstraint() bool
DefaultConstructorConstraint check DefaultConstructorConstraint flag. Denotes: The generic parameter has the .ctor special constraint.
func (GenericParamAttributes) None ¶
func (f GenericParamAttributes) None() bool
None check None flag. Denotes: The generic parameter is non-variant and has no special constraints.
func (GenericParamAttributes) NotNullableValueTypeConstraint ¶
func (f GenericParamAttributes) NotNullableValueTypeConstraint() bool
NotNullableValueTypeConstraint check NotNullableValueTypeConstraint flag. Denotes: The generic parameter has the valuetype special constraint.
func (GenericParamAttributes) ReferenceTypeConstraint ¶
func (f GenericParamAttributes) ReferenceTypeConstraint() bool
ReferenceTypeConstraint check ReferenceTypeConstraint flag. Denotes: The generic parameter has the class special constraint.
type GenericParamConstraint ¶
type GenericParamConstraint struct { Owner Index `table:"GenericParam"` Constraint TypeDefOrRef }
GenericParamConstraint is a II.22.21 GenericParamConstraint representation.
func (*GenericParamConstraint) FromRow ¶
func (f *GenericParamConstraint) FromRow(r Row) error
FromRow creates GenericParamConstraint from given Row.
func (*GenericParamConstraint) ResolveOwner ¶
func (f *GenericParamConstraint) ResolveOwner(c *Context) (GenericParam, error)
ResolveOwner resolves Owner index using given Context.
type HasConstant ¶
type HasConstant uint32
HasConstant represents composite index one of
Field Param Property
table.
func CreateHasConstant ¶
func CreateHasConstant(tt md.TableType, idx uint32) HasConstant
CreateHasConstant creates new composite index from given tag and table index.
func (HasConstant) Row ¶
func (t HasConstant) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*HasConstant) Set ¶
func (t *HasConstant) Set(tt md.TableType, idx uint32)
Set sets HasConstant tag and index.
func (HasConstant) String ¶
func (t HasConstant) String() string
String implements fmt.Stringer method.
func (HasConstant) Table ¶
func (t HasConstant) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (HasConstant) TableIndex ¶
func (t HasConstant) TableIndex() uint32
TableIndex returns HasConstant index.
func (HasConstant) Tag ¶
func (t HasConstant) Tag() uint32
Tag returns HasConstant tag. Tag table:
Field = 0 Param = 1 Property = 2
type HasCustomAttribute ¶
type HasCustomAttribute uint32
HasCustomAttribute represents composite index one of
MethodDef Field TypeRef TypeDef Param InterfaceImpl MemberRef Module Permission Property Event StandAloneSig ModuleRef TypeSpec Assembly AssemblyRef File ExportedType ManifestResource GenericParam GenericParamConstraint MethodSpec
table.
func CreateHasCustomAttribute ¶
func CreateHasCustomAttribute(tt md.TableType, idx uint32) HasCustomAttribute
CreateHasCustomAttribute creates new composite index from given tag and table index.
func (HasCustomAttribute) Row ¶
func (t HasCustomAttribute) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*HasCustomAttribute) Set ¶
func (t *HasCustomAttribute) Set(tt md.TableType, idx uint32)
Set sets HasCustomAttribute tag and index.
func (HasCustomAttribute) String ¶
func (t HasCustomAttribute) String() string
String implements fmt.Stringer method.
func (HasCustomAttribute) Table ¶
func (t HasCustomAttribute) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (HasCustomAttribute) TableIndex ¶
func (t HasCustomAttribute) TableIndex() uint32
TableIndex returns HasCustomAttribute index.
func (HasCustomAttribute) Tag ¶
func (t HasCustomAttribute) Tag() uint32
Tag returns HasCustomAttribute tag. Tag table:
MethodDef = 0 Field = 1 TypeRef = 2 TypeDef = 3 Param = 4 InterfaceImpl = 5 MemberRef = 6 Module = 7 Permission = 8 Property = 9 Event = 10 StandAloneSig = 11 ModuleRef = 12 TypeSpec = 13 Assembly = 14 AssemblyRef = 15 File = 16 ExportedType = 17 ManifestResource = 18 GenericParam = 19 GenericParamConstraint = 20 MethodSpec = 21
type HasDeclSecurity ¶
type HasDeclSecurity uint32
HasDeclSecurity represents composite index one of
TypeDef MethodDef Assembly
table.
func CreateHasDeclSecurity ¶
func CreateHasDeclSecurity(tt md.TableType, idx uint32) HasDeclSecurity
CreateHasDeclSecurity creates new composite index from given tag and table index.
func (HasDeclSecurity) Row ¶
func (t HasDeclSecurity) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*HasDeclSecurity) Set ¶
func (t *HasDeclSecurity) Set(tt md.TableType, idx uint32)
Set sets HasDeclSecurity tag and index.
func (HasDeclSecurity) String ¶
func (t HasDeclSecurity) String() string
String implements fmt.Stringer method.
func (HasDeclSecurity) Table ¶
func (t HasDeclSecurity) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (HasDeclSecurity) TableIndex ¶
func (t HasDeclSecurity) TableIndex() uint32
TableIndex returns HasDeclSecurity index.
func (HasDeclSecurity) Tag ¶
func (t HasDeclSecurity) Tag() uint32
Tag returns HasDeclSecurity tag. Tag table:
TypeDef = 0 MethodDef = 1 Assembly = 2
type HasFieldMarshall ¶
type HasFieldMarshall uint32
HasFieldMarshall represents composite index one of
Field Param
table.
func CreateHasFieldMarshall ¶
func CreateHasFieldMarshall(tt md.TableType, idx uint32) HasFieldMarshall
CreateHasFieldMarshall creates new composite index from given tag and table index.
func (HasFieldMarshall) Row ¶
func (t HasFieldMarshall) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*HasFieldMarshall) Set ¶
func (t *HasFieldMarshall) Set(tt md.TableType, idx uint32)
Set sets HasFieldMarshall tag and index.
func (HasFieldMarshall) String ¶
func (t HasFieldMarshall) String() string
String implements fmt.Stringer method.
func (HasFieldMarshall) Table ¶
func (t HasFieldMarshall) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (HasFieldMarshall) TableIndex ¶
func (t HasFieldMarshall) TableIndex() uint32
TableIndex returns HasFieldMarshall index.
func (HasFieldMarshall) Tag ¶
func (t HasFieldMarshall) Tag() uint32
Tag returns HasFieldMarshall tag. Tag table:
Field = 0 Param = 1
type HasSemantics ¶
type HasSemantics uint32
HasSemantics represents composite index one of
Event Property
table.
func CreateHasSemantics ¶
func CreateHasSemantics(tt md.TableType, idx uint32) HasSemantics
CreateHasSemantics creates new composite index from given tag and table index.
func (HasSemantics) Row ¶
func (t HasSemantics) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*HasSemantics) Set ¶
func (t *HasSemantics) Set(tt md.TableType, idx uint32)
Set sets HasSemantics tag and index.
func (HasSemantics) String ¶
func (t HasSemantics) String() string
String implements fmt.Stringer method.
func (HasSemantics) Table ¶
func (t HasSemantics) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (HasSemantics) TableIndex ¶
func (t HasSemantics) TableIndex() uint32
TableIndex returns HasSemantics index.
func (HasSemantics) Tag ¶
func (t HasSemantics) Tag() uint32
Tag returns HasSemantics tag. Tag table:
Event = 0 Property = 1
type ImplMap ¶
type ImplMap struct { MappingFlags PInvokeAttributes MemberForwarded MemberForwarded ImportName string ImportScope Index `table:"ModuleRef"` }
ImplMap is a II.22.22 ImplMap representation.
type Implementation ¶
type Implementation uint32
Implementation represents composite index one of
File AssemblyRef ExportedType
table.
func CreateImplementation ¶
func CreateImplementation(tt md.TableType, idx uint32) Implementation
CreateImplementation creates new composite index from given tag and table index.
func (Implementation) Row ¶
func (t Implementation) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*Implementation) Set ¶
func (t *Implementation) Set(tt md.TableType, idx uint32)
Set sets Implementation tag and index.
func (Implementation) String ¶
func (t Implementation) String() string
String implements fmt.Stringer method.
func (Implementation) Table ¶
func (t Implementation) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (Implementation) TableIndex ¶
func (t Implementation) TableIndex() uint32
TableIndex returns Implementation index.
func (Implementation) Tag ¶
func (t Implementation) Tag() uint32
Tag returns Implementation tag. Tag table:
File = 0 AssemblyRef = 1 ExportedType = 2
type InterfaceImpl ¶
type InterfaceImpl struct { Class Index `table:"TypeDef"` Interface TypeDefOrRef }
InterfaceImpl is a II.22.23 InterfaceImpl representation.
func (*InterfaceImpl) FromRow ¶
func (f *InterfaceImpl) FromRow(r Row) error
FromRow creates InterfaceImpl from given Row.
func (*InterfaceImpl) ResolveClass ¶
func (f *InterfaceImpl) ResolveClass(c *Context) (TypeDef, error)
ResolveClass resolves Class index using given Context.
type ManifestResource ¶
type ManifestResource struct { Offset uint32 Flags ManifestResourceAttributes Name string Implementation Implementation }
ManifestResource is a II.22.24 ManifestResource representation.
func (*ManifestResource) FromRow ¶
func (f *ManifestResource) FromRow(r Row) error
FromRow creates ManifestResource from given Row.
type ManifestResourceAttributes ¶
type ManifestResourceAttributes uint32
ManifestResourceAttributes represents II.23.1.9 Flags for ManifestResource ManifestResourceAttributes.
func (ManifestResourceAttributes) Private ¶
func (f ManifestResourceAttributes) Private() bool
Private check Private flag. Denotes: The Resource is private to the Assembly.
func (ManifestResourceAttributes) Public ¶
func (f ManifestResourceAttributes) Public() bool
Public check Public flag. Denotes: The Resource is exported from the Assembly.
type MemberForwarded ¶
type MemberForwarded uint32
MemberForwarded represents composite index one of
Field MethodDef
table.
func CreateMemberForwarded ¶
func CreateMemberForwarded(tt md.TableType, idx uint32) MemberForwarded
CreateMemberForwarded creates new composite index from given tag and table index.
func (MemberForwarded) Row ¶
func (t MemberForwarded) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*MemberForwarded) Set ¶
func (t *MemberForwarded) Set(tt md.TableType, idx uint32)
Set sets MemberForwarded tag and index.
func (MemberForwarded) String ¶
func (t MemberForwarded) String() string
String implements fmt.Stringer method.
func (MemberForwarded) Table ¶
func (t MemberForwarded) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (MemberForwarded) TableIndex ¶
func (t MemberForwarded) TableIndex() uint32
TableIndex returns MemberForwarded index.
func (MemberForwarded) Tag ¶
func (t MemberForwarded) Tag() uint32
Tag returns MemberForwarded tag. Tag table:
Field = 0 MethodDef = 1
type MemberRef ¶
type MemberRef struct { Class MemberRefParent Name string Signature Signature }
MemberRef is a II.22.25 MemberRef representation.
type MemberRefParent ¶
type MemberRefParent uint32
MemberRefParent represents composite index one of
TypeDef TypeRef ModuleRef MethodDef TypeSpec
table.
func CreateMemberRefParent ¶
func CreateMemberRefParent(tt md.TableType, idx uint32) MemberRefParent
CreateMemberRefParent creates new composite index from given tag and table index.
func (MemberRefParent) Row ¶
func (t MemberRefParent) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*MemberRefParent) Set ¶
func (t *MemberRefParent) Set(tt md.TableType, idx uint32)
Set sets MemberRefParent tag and index.
func (MemberRefParent) String ¶
func (t MemberRefParent) String() string
String implements fmt.Stringer method.
func (MemberRefParent) Table ¶
func (t MemberRefParent) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (MemberRefParent) TableIndex ¶
func (t MemberRefParent) TableIndex() uint32
TableIndex returns MemberRefParent index.
func (MemberRefParent) Tag ¶
func (t MemberRefParent) Tag() uint32
Tag returns MemberRefParent tag. Tag table:
TypeDef = 0 TypeRef = 1 ModuleRef = 2 MethodDef = 3 TypeSpec = 4
type MethodAttributes ¶
type MethodAttributes uint16
MethodAttributes represents II.23.1.10 Flags for methods MethodAttributes.
func (MethodAttributes) Abstract ¶
func (f MethodAttributes) Abstract() bool
Abstract check Abstract flag. Denotes: Method does not provide an implementation.
func (MethodAttributes) Assembly ¶
func (f MethodAttributes) Assembly() bool
Assembly check Assembly flag. Denotes: Accessibly by anyone in the Assembly.
func (MethodAttributes) CompilerControlled ¶
func (f MethodAttributes) CompilerControlled() bool
CompilerControlled check CompilerControlled flag. Denotes: Member, not, referenceable.
func (MethodAttributes) FamANDAssem ¶
func (f MethodAttributes) FamANDAssem() bool
FamANDAssem check FamANDAssem flag. Denotes: Accessible by sub-types only in this Assembly.
func (MethodAttributes) FamORAssem ¶
func (f MethodAttributes) FamORAssem() bool
FamORAssem check FamORAssem flag. Denotes: Accessibly by sub-types anywhere, plus anyone in assembly.
func (MethodAttributes) Family ¶
func (f MethodAttributes) Family() bool
Family check Family flag. Denotes: Accessible only by type and sub-types.
func (MethodAttributes) Final ¶
func (f MethodAttributes) Final() bool
Final check Final flag. Denotes: Method cannot be overridden.
func (MethodAttributes) HasSecurity ¶
func (f MethodAttributes) HasSecurity() bool
HasSecurity check HasSecurity flag. Denotes: Method has security associate with it.
func (MethodAttributes) HideBySig ¶
func (f MethodAttributes) HideBySig() bool
HideBySig check HideBySig flag. Denotes: Method hides by name+sig, else just by name.
func (MethodAttributes) NewSlot ¶
func (f MethodAttributes) NewSlot() bool
NewSlot check NewSlot flag. Denotes: Method always gets a new slot in the vtable.
func (MethodAttributes) PInvokeImpl ¶
func (f MethodAttributes) PInvokeImpl() bool
PInvokeImpl check PInvokeImpl flag. Denotes: Implementation is forwarded through PInvoke.
func (MethodAttributes) Private ¶
func (f MethodAttributes) Private() bool
Private check Private flag. Denotes: Accessible only by the parent type.
func (MethodAttributes) Public ¶
func (f MethodAttributes) Public() bool
Public check Public flag. Denotes: Accessibly by anyone who has visibility to this scope field contract attributes.
func (MethodAttributes) RTSpecialName ¶
func (f MethodAttributes) RTSpecialName() bool
RTSpecialName check RTSpecialName flag. Denotes: CLI provides 'special' behavior, depending upon the name of the method.
func (MethodAttributes) RequireSecObject ¶
func (f MethodAttributes) RequireSecObject() bool
RequireSecObject check RequireSecObject flag. Denotes: Method calls another method containing security code.
func (MethodAttributes) ReuseSlot ¶
func (f MethodAttributes) ReuseSlot() bool
ReuseSlot check ReuseSlot flag. Denotes: Method reuses existing slot in vtable.
func (MethodAttributes) SpecialName ¶
func (f MethodAttributes) SpecialName() bool
SpecialName check SpecialName flag. Denotes: Method is special.
func (MethodAttributes) Static ¶
func (f MethodAttributes) Static() bool
Static check Static flag. Denotes: Defined on type, else per instance.
func (MethodAttributes) Strict ¶
func (f MethodAttributes) Strict() bool
Strict check Strict flag. Denotes: Method can only be overriden if also accessible.
func (MethodAttributes) UnmanagedExport ¶
func (f MethodAttributes) UnmanagedExport() bool
UnmanagedExport check UnmanagedExport flag. Denotes: Reserved: shall be zero for conforming implementations.
func (MethodAttributes) Virtual ¶
func (f MethodAttributes) Virtual() bool
Virtual check Virtual flag. Denotes: Method is virtual.
type MethodDef ¶
type MethodDef struct { RVA uint32 ImplFlags MethodImplAttributes Flags MethodAttributes Name string Signature Signature ParamList List `table:"Param"` }
MethodDef is a II.22.26 MethodDef representation.
type MethodDefOrRef ¶
type MethodDefOrRef uint32
MethodDefOrRef represents composite index one of
MethodDef MemberRef
table.
func CreateMethodDefOrRef ¶
func CreateMethodDefOrRef(tt md.TableType, idx uint32) MethodDefOrRef
CreateMethodDefOrRef creates new composite index from given tag and table index.
func (MethodDefOrRef) Row ¶
func (t MethodDefOrRef) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*MethodDefOrRef) Set ¶
func (t *MethodDefOrRef) Set(tt md.TableType, idx uint32)
Set sets MethodDefOrRef tag and index.
func (MethodDefOrRef) String ¶
func (t MethodDefOrRef) String() string
String implements fmt.Stringer method.
func (MethodDefOrRef) Table ¶
func (t MethodDefOrRef) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (MethodDefOrRef) TableIndex ¶
func (t MethodDefOrRef) TableIndex() uint32
TableIndex returns MethodDefOrRef index.
func (MethodDefOrRef) Tag ¶
func (t MethodDefOrRef) Tag() uint32
Tag returns MethodDefOrRef tag. Tag table:
MethodDef = 0 MemberRef = 1
type MethodImpl ¶
type MethodImpl struct { Class Index `table:"TypeDef"` MethodBody MethodDefOrRef MethodDeclaration MethodDefOrRef }
MethodImpl is a II.22.27 MethodImpl representation.
func (*MethodImpl) FromRow ¶
func (f *MethodImpl) FromRow(r Row) error
FromRow creates MethodImpl from given Row.
func (*MethodImpl) ResolveClass ¶
func (f *MethodImpl) ResolveClass(c *Context) (TypeDef, error)
ResolveClass resolves Class index using given Context.
type MethodImplAttributes ¶
type MethodImplAttributes uint16
MethodImplAttributes represents II.23.1.11 Flags for methods MethodImplAttributes.
func (MethodImplAttributes) ForwardRef ¶
func (f MethodImplAttributes) ForwardRef() bool
ForwardRef check ForwardRef flag. Denotes: Indicates method is defined; used primarily in merge scenarios.
func (MethodImplAttributes) IL ¶
func (f MethodImplAttributes) IL() bool
IL check IL flag. Denotes: Method impl is CIL.
func (MethodImplAttributes) InternalCall ¶
func (f MethodImplAttributes) InternalCall() bool
InternalCall check InternalCall flag. Denotes: Reserved: shall be zero in conforming implementations.
func (MethodImplAttributes) Managed ¶
func (f MethodImplAttributes) Managed() bool
Managed check Managed flag. Denotes: Method impl is managed.
func (MethodImplAttributes) MaxMethodImplVal ¶
func (f MethodImplAttributes) MaxMethodImplVal() bool
MaxMethodImplVal check MaxMethodImplVal flag. Denotes: Range check value.
func (MethodImplAttributes) Native ¶
func (f MethodImplAttributes) Native() bool
Native check Native flag. Denotes: Method impl is native.
func (MethodImplAttributes) NoInlining ¶
func (f MethodImplAttributes) NoInlining() bool
NoInlining check NoInlining flag. Denotes: Method cannot be inlined.
func (MethodImplAttributes) NoOptimization ¶
func (f MethodImplAttributes) NoOptimization() bool
NoOptimization check NoOptimization flag. Denotes: Method will not be optimized when generating native code.
func (MethodImplAttributes) OPTIL ¶
func (f MethodImplAttributes) OPTIL() bool
OPTIL check OPTIL flag. Denotes: Reserved: shall be zero in conforming implementations.
func (MethodImplAttributes) PreserveSig ¶
func (f MethodImplAttributes) PreserveSig() bool
PreserveSig check PreserveSig flag. Denotes: Reserved: conforming implementations can ignore.
func (MethodImplAttributes) Runtime ¶
func (f MethodImplAttributes) Runtime() bool
Runtime check Runtime flag. Denotes: Method impl is provided by the runtime.
func (MethodImplAttributes) Synchronized ¶
func (f MethodImplAttributes) Synchronized() bool
Synchronized check Synchronized flag. Denotes: Method is single threaded through the body.
func (MethodImplAttributes) Unmanaged ¶
func (f MethodImplAttributes) Unmanaged() bool
Unmanaged check Unmanaged flag. Denotes: Method impl is unmanaged, otherwise managed.
type MethodSemantics ¶
type MethodSemantics struct { Semantics MethodSemanticsAttributes Method Index `table:"MethodDef"` Association HasSemantics }
MethodSemantics is a II.22.28 MethodSemantics representation.
func (*MethodSemantics) FromRow ¶
func (f *MethodSemantics) FromRow(r Row) error
FromRow creates MethodSemantics from given Row.
func (*MethodSemantics) ResolveMethod ¶
func (f *MethodSemantics) ResolveMethod(c *Context) (MethodDef, error)
ResolveMethod resolves Method index using given Context.
type MethodSemanticsAttributes ¶
type MethodSemanticsAttributes uint16
MethodSemanticsAttributes represents II.23.1.12 Flags for MethodSemantics MethodSemanticsAttributes.
func (MethodSemanticsAttributes) AddOn ¶
func (f MethodSemanticsAttributes) AddOn() bool
AddOn check AddOn flag. Denotes: AddOn method for event. This refers to the required add_ method for events (§22.13).
func (MethodSemanticsAttributes) Fire ¶
func (f MethodSemanticsAttributes) Fire() bool
Fire check Fire flag. Denotes: Fire method for event. This refers to the optional raise_ method for events (§22.13).
func (MethodSemanticsAttributes) Getter ¶
func (f MethodSemanticsAttributes) Getter() bool
Getter check Getter flag. Denotes: Getter for property.
func (MethodSemanticsAttributes) Other ¶
func (f MethodSemanticsAttributes) Other() bool
Other check Other flag. Denotes: Other method for property or event.
func (MethodSemanticsAttributes) RemoveOn ¶
func (f MethodSemanticsAttributes) RemoveOn() bool
RemoveOn check RemoveOn flag. Denotes: RemoveOn method for event. . This refers to the required remove_ method for events (§22.13).
func (MethodSemanticsAttributes) Setter ¶
func (f MethodSemanticsAttributes) Setter() bool
Setter check Setter flag. Denotes: Setter for property.
type MethodSignature ¶
MethodSignature is a II.23.2.1 MethodDefSig or II.23.2.2 MethodRefSig representation.
type MethodSpec ¶
type MethodSpec struct { Method MethodDefOrRef Instantiation Blob }
MethodSpec is a II.22.29 MethodSpec representation.
func (*MethodSpec) FromRow ¶
func (f *MethodSpec) FromRow(r Row) error
FromRow creates MethodSpec from given Row.
type ModuleRef ¶
type ModuleRef struct {
Name string
}
ModuleRef is a II.22.31 ModuleRef representation.
type NestedClass ¶
type NestedClass struct { NestedClass Index `table:"TypeDef"` EnclosingClass Index `table:"TypeDef"` }
NestedClass is a II.22.32 NestedClass representation.
func (*NestedClass) FromRow ¶
func (f *NestedClass) FromRow(r Row) error
FromRow creates NestedClass from given Row.
func (*NestedClass) ResolveEnclosingClass ¶
func (f *NestedClass) ResolveEnclosingClass(c *Context) (TypeDef, error)
ResolveEnclosingClass resolves EnclosingClass index using given Context.
func (*NestedClass) ResolveNestedClass ¶
func (f *NestedClass) ResolveNestedClass(c *Context) (TypeDef, error)
ResolveNestedClass resolves NestedClass index using given Context.
type PInvokeAttributes ¶
type PInvokeAttributes uint16
PInvokeAttributes represents II.23.1.8 Flags for ImplMap PInvokeAttributes.
func (PInvokeAttributes) CallConvCdecl ¶
func (f PInvokeAttributes) CallConvCdecl() bool
CallConvCdecl check CallConvCdecl flag.
func (PInvokeAttributes) CallConvFastcall ¶
func (f PInvokeAttributes) CallConvFastcall() bool
CallConvFastcall check CallConvFastcall flag.
func (PInvokeAttributes) CallConvPlatformapi ¶
func (f PInvokeAttributes) CallConvPlatformapi() bool
CallConvPlatformapi check CallConvPlatformapi flag.
func (PInvokeAttributes) CallConvStdcall ¶
func (f PInvokeAttributes) CallConvStdcall() bool
CallConvStdcall check CallConvStdcall flag.
func (PInvokeAttributes) CallConvThiscall ¶
func (f PInvokeAttributes) CallConvThiscall() bool
CallConvThiscall check CallConvThiscall flag.
func (PInvokeAttributes) CharSetAnsi ¶
func (f PInvokeAttributes) CharSetAnsi() bool
CharSetAnsi check CharSetAnsi flag.
func (PInvokeAttributes) CharSetAuto ¶
func (f PInvokeAttributes) CharSetAuto() bool
CharSetAuto check CharSetAuto flag.
func (PInvokeAttributes) CharSetNotSpec ¶
func (f PInvokeAttributes) CharSetNotSpec() bool
CharSetNotSpec check CharSetNotSpec flag.
func (PInvokeAttributes) CharSetUnicode ¶
func (f PInvokeAttributes) CharSetUnicode() bool
CharSetUnicode check CharSetUnicode flag.
func (PInvokeAttributes) NoMangle ¶
func (f PInvokeAttributes) NoMangle() bool
NoMangle check NoMangle flag. Denotes: PInvoke is to use the member name as specified.
func (PInvokeAttributes) SupportsLastError ¶
func (f PInvokeAttributes) SupportsLastError() bool
SupportsLastError check SupportsLastError flag. Denotes: Information about target function. Not relevant for fields.
type Param ¶
type Param struct { Flags ParamAttributes Sequence uint16 Name string }
Param is a II.22.33 Param representation.
type ParamAttributes ¶
type ParamAttributes uint16
ParamAttributes represents II.23.1.13 Flags for params ParamAttributes.
func (ParamAttributes) HasDefault ¶
func (f ParamAttributes) HasDefault() bool
HasDefault check HasDefault flag. Denotes: Param has default value.
func (ParamAttributes) HasFieldMarshal ¶
func (f ParamAttributes) HasFieldMarshal() bool
HasFieldMarshal check HasFieldMarshal flag. Denotes: Param has FieldMarshal.
func (ParamAttributes) In ¶
func (f ParamAttributes) In() bool
In check In flag. Denotes: Param is [In].
func (ParamAttributes) Optional ¶
func (f ParamAttributes) Optional() bool
Optional check Optional flag. Denotes: Param is optional.
func (ParamAttributes) Out ¶
func (f ParamAttributes) Out() bool
Out check Out flag. Denotes: Param is [out].
func (ParamAttributes) Unused ¶
func (f ParamAttributes) Unused() bool
Unused check Unused flag. Denotes: Reserved: shall be zero in a conforming implementation.
type Property ¶
type Property struct { Flags PropertyAttributes Name string Type Signature }
Property is a II.22.34 Property representation.
type PropertyAttributes ¶
type PropertyAttributes uint16
PropertyAttributes represents II.23.1.14 Flags for properties PropertyAttributes.
func (PropertyAttributes) HasDefault ¶
func (f PropertyAttributes) HasDefault() bool
HasDefault check HasDefault flag. Denotes: Property has default.
func (PropertyAttributes) RTSpecialName ¶
func (f PropertyAttributes) RTSpecialName() bool
RTSpecialName check RTSpecialName flag. Denotes: Runtime(metadata internal APIs) should check name encoding.
func (PropertyAttributes) SpecialName ¶
func (f PropertyAttributes) SpecialName() bool
SpecialName check SpecialName flag. Denotes: Property is special.
func (PropertyAttributes) Unused ¶
func (f PropertyAttributes) Unused() bool
Unused check Unused flag. Denotes: Reserved: shall be zero in a conforming implementation.
type PropertyMap ¶
PropertyMap is a II.22.35 PropertyMap representation.
func (*PropertyMap) FromRow ¶
func (f *PropertyMap) FromRow(r Row) error
FromRow creates PropertyMap from given Row.
func (*PropertyMap) ResolveParent ¶
func (f *PropertyMap) ResolveParent(c *Context) (TypeDef, error)
ResolveParent resolves Parent index using given Context.
func (*PropertyMap) ResolvePropertyList ¶
func (f *PropertyMap) ResolvePropertyList(c *Context) ([]Property, error)
ResolvePropertyList resolves PropertyList index using given Context.
type ResolutionScope ¶
type ResolutionScope uint32
ResolutionScope represents composite index one of
Module ModuleRef AssemblyRef TypeRef
table.
func CreateResolutionScope ¶
func CreateResolutionScope(tt md.TableType, idx uint32) ResolutionScope
CreateResolutionScope creates new composite index from given tag and table index.
func (ResolutionScope) Row ¶
func (t ResolutionScope) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*ResolutionScope) Set ¶
func (t *ResolutionScope) Set(tt md.TableType, idx uint32)
Set sets ResolutionScope tag and index.
func (ResolutionScope) String ¶
func (t ResolutionScope) String() string
String implements fmt.Stringer method.
func (ResolutionScope) Table ¶
func (t ResolutionScope) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (ResolutionScope) TableIndex ¶
func (t ResolutionScope) TableIndex() uint32
TableIndex returns ResolutionScope index.
func (ResolutionScope) Tag ¶
func (t ResolutionScope) Tag() uint32
Tag returns ResolutionScope tag. Tag table:
Module = 0 ModuleRef = 1 AssemblyRef = 2 TypeRef = 3
type Row ¶
Row is a simple helper to access one table row.
func (*Row) Signature ¶
Signature finds signature blob value from #Blob heap using given index column.
type Signature ¶
type Signature Blob
Signature represents Signature blob.
func (Signature) Reader ¶
func (s Signature) Reader() *SignatureReader
Reader creates SignatureReader.
type SignatureReader ¶
type SignatureReader struct {
// contains filtered or unexported fields
}
SignatureReader is a helper to read Signature.
func (*SignatureReader) Field ¶
func (s *SignatureReader) Field(file *Context) (FieldSignature, error)
Field reads FieldSignature from Signature blob.
func (*SignatureReader) Method ¶
func (s *SignatureReader) Method(file *Context) (MethodSignature, error)
Method reads MethodSignature from Signature blob.
func (*SignatureReader) NextElement ¶
func (s *SignatureReader) NextElement(c *Context) (e Element, _ error)
NextElement returns next Element in signature.
func (*SignatureReader) NextIs ¶
func (s *SignatureReader) NextIs(expect uint32) bool
NextIs peeks unsigned integer from Signature blob and compares it with given value. If values are equal, increases offset.
func (*SignatureReader) Peek ¶
func (s *SignatureReader) Peek() (value uint32, size int, ok bool)
Peek peeks unsigned integer from Signature blob, returns it and its size in bytes. If there is no data anymore, ok is false.
func (*SignatureReader) Read ¶
func (s *SignatureReader) Read() (value uint32, ok bool)
Read reads unsigned integer from Signature blob and returns it. If there is no data anymore, ok is false.
type Table ¶
Table is a simple helper to access one table.
type TypeAttributes ¶
type TypeAttributes uint32
TypeAttributes represents II.23.1.15 Flags for types TypeAttributes.
func (TypeAttributes) Abstract ¶
func (f TypeAttributes) Abstract() bool
Abstract check Abstract flag. Denotes: Class is abstract.
func (TypeAttributes) AnsiClass ¶
func (f TypeAttributes) AnsiClass() bool
AnsiClass check AnsiClass flag. Denotes: LPSTR is interpreted as ANSI.
func (TypeAttributes) AutoClass ¶
func (f TypeAttributes) AutoClass() bool
AutoClass check AutoClass flag. Denotes: LPSTR is interpreted automatically.
func (TypeAttributes) AutoLayout ¶
func (f TypeAttributes) AutoLayout() bool
AutoLayout check AutoLayout flag. Denotes: Class fields are auto-laid out.
func (TypeAttributes) BeforeFieldInit ¶
func (f TypeAttributes) BeforeFieldInit() bool
BeforeFieldInit check BeforeFieldInit flag. Denotes: Initialize the class before first static field access.
func (TypeAttributes) Class ¶
func (f TypeAttributes) Class() bool
Class check Class flag. Denotes: Type is a class.
func (TypeAttributes) CustomFormatClass ¶
func (f TypeAttributes) CustomFormatClass() bool
CustomFormatClass check CustomFormatClass flag. Denotes: A non-standard encoding specified by CustomStringFormatMask.
func (TypeAttributes) ExplicitLayout ¶
func (f TypeAttributes) ExplicitLayout() bool
ExplicitLayout check ExplicitLayout flag. Denotes: Layout is supplied explicitly.
func (TypeAttributes) HasSecurity ¶
func (f TypeAttributes) HasSecurity() bool
HasSecurity check HasSecurity flag. Denotes: Type has security associate with it.
func (TypeAttributes) Import ¶
func (f TypeAttributes) Import() bool
Import check Import flag. Denotes: Class/Interface is imported.
func (TypeAttributes) Interface ¶
func (f TypeAttributes) Interface() bool
Interface check Interface flag. Denotes: Type is an interface.
func (TypeAttributes) IsTypeForwarder ¶
func (f TypeAttributes) IsTypeForwarder() bool
IsTypeForwarder check IsTypeForwarder flag. Denotes: This ExportedType entry is a type forwarder.
func (TypeAttributes) NestedAssembly ¶
func (f TypeAttributes) NestedAssembly() bool
NestedAssembly check NestedAssembly flag. Denotes: Class is nested with assembly visibility.
func (TypeAttributes) NestedFamANDAssem ¶
func (f TypeAttributes) NestedFamANDAssem() bool
NestedFamANDAssem check NestedFamANDAssem flag. Denotes: Class is nested with family and assembly visibility.
func (TypeAttributes) NestedFamORAssem ¶
func (f TypeAttributes) NestedFamORAssem() bool
NestedFamORAssem check NestedFamORAssem flag. Denotes: Class is nested with family or assembly visibility.
func (TypeAttributes) NestedFamily ¶
func (f TypeAttributes) NestedFamily() bool
NestedFamily check NestedFamily flag. Denotes: Class is nested with family visibility.
func (TypeAttributes) NestedPrivate ¶
func (f TypeAttributes) NestedPrivate() bool
NestedPrivate check NestedPrivate flag. Denotes: Class is nested with private visibility.
func (TypeAttributes) NestedPublic ¶
func (f TypeAttributes) NestedPublic() bool
NestedPublic check NestedPublic flag. Denotes: Class is nested with public visibility.
func (TypeAttributes) NotPublic ¶
func (f TypeAttributes) NotPublic() bool
NotPublic check NotPublic flag. Denotes: Class has no public scope.
func (TypeAttributes) Public ¶
func (f TypeAttributes) Public() bool
Public check Public flag. Denotes: Class has public scope.
func (TypeAttributes) RTSpecialName ¶
func (f TypeAttributes) RTSpecialName() bool
RTSpecialName check RTSpecialName flag. Denotes: CLI provides 'special' behavior, depending upon the name of the Type.
func (TypeAttributes) Sealed ¶
func (f TypeAttributes) Sealed() bool
Sealed check Sealed flag. Denotes: Class cannot be extended.
func (TypeAttributes) SequentialLayout ¶
func (f TypeAttributes) SequentialLayout() bool
SequentialLayout check SequentialLayout flag. Denotes: Class fields are laid out sequentially.
func (TypeAttributes) Serializable ¶
func (f TypeAttributes) Serializable() bool
Serializable check Serializable flag. Denotes: Reserved (Class is serializable).
func (TypeAttributes) SpecialName ¶
func (f TypeAttributes) SpecialName() bool
SpecialName check SpecialName flag. Denotes: Class name is special.
func (TypeAttributes) UnicodeClass ¶
func (f TypeAttributes) UnicodeClass() bool
UnicodeClass check UnicodeClass flag. Denotes: LPSTR is interpreted as Unicode.
type TypeDef ¶
type TypeDef struct { Flags TypeAttributes TypeName string TypeNamespace string Extends TypeDefOrRef FieldList List `table:"Field"` MethodList List `table:"MethodDef"` }
TypeDef is a II.22.37 TypeDef representation.
func (*TypeDef) ResolveFieldList ¶
ResolveFieldList resolves FieldList index using given Context.
type TypeDefOrRef ¶
type TypeDefOrRef uint32
TypeDefOrRef represents composite index one of
TypeDef TypeRef TypeSpec
table.
func CreateTypeDefOrRef ¶
func CreateTypeDefOrRef(tt md.TableType, idx uint32) TypeDefOrRef
CreateTypeDefOrRef creates new composite index from given tag and table index.
func (TypeDefOrRef) Row ¶
func (t TypeDefOrRef) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*TypeDefOrRef) Set ¶
func (t *TypeDefOrRef) Set(tt md.TableType, idx uint32)
Set sets TypeDefOrRef tag and index.
func (TypeDefOrRef) String ¶
func (t TypeDefOrRef) String() string
String implements fmt.Stringer method.
func (TypeDefOrRef) Table ¶
func (t TypeDefOrRef) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (TypeDefOrRef) TableIndex ¶
func (t TypeDefOrRef) TableIndex() uint32
TableIndex returns TypeDefOrRef index.
func (TypeDefOrRef) Tag ¶
func (t TypeDefOrRef) Tag() uint32
Tag returns TypeDefOrRef tag. Tag table:
TypeDef = 0 TypeRef = 1 TypeSpec = 2
type TypeOrMethodDef ¶
type TypeOrMethodDef uint32
TypeOrMethodDef represents composite index one of
TypeDef MethodDef
table.
func CreateTypeOrMethodDef ¶
func CreateTypeOrMethodDef(tt md.TableType, idx uint32) TypeOrMethodDef
CreateTypeOrMethodDef creates new composite index from given tag and table index.
func (TypeOrMethodDef) Row ¶
func (t TypeOrMethodDef) Row(c *Context) (Row, bool)
Row creates new Row using given Context and this index.
func (*TypeOrMethodDef) Set ¶
func (t *TypeOrMethodDef) Set(tt md.TableType, idx uint32)
Set sets TypeOrMethodDef tag and index.
func (TypeOrMethodDef) String ¶
func (t TypeOrMethodDef) String() string
String implements fmt.Stringer method.
func (TypeOrMethodDef) Table ¶
func (t TypeOrMethodDef) Table() (md.TableType, bool)
Table returns associated TableType using tag.
func (TypeOrMethodDef) TableIndex ¶
func (t TypeOrMethodDef) TableIndex() uint32
TableIndex returns TypeOrMethodDef index.
func (TypeOrMethodDef) Tag ¶
func (t TypeOrMethodDef) Tag() uint32
Tag returns TypeOrMethodDef tag. Tag table:
TypeDef = 0 MethodDef = 1
type TypeRef ¶
type TypeRef struct { ResolutionScope ResolutionScope TypeName string TypeNamespace string }
TypeRef is a II.22.38 TypeRef representation.
Source Files ¶
- assembly.go
- assembly_os.go
- assembly_processor.go
- assembly_ref_os.go
- assembly_ref_processor.go
- assmebly_ref.go
- attributes.gen.go
- class_layout.go
- composite_index.gen.go
- constant.go
- context.go
- custom_attribute.go
- decl_security.go
- element_type.go
- elementtypekind_string.go
- event.go
- event_map.go
- exported_type.go
- field.go
- field_layout.go
- field_marshal.go
- field_rva.go
- file.go
- from_row.gen.go
- gen.go
- generic_param.go
- generic_param_constranint.go
- impl_map.go
- interface_impl.go
- list.go
- manifest_resource.go
- member_ref.go
- method_def.go
- method_impl.go
- method_semantics.go
- method_spec.go
- module.go
- module_ref.go
- nested_class.go
- param.go
- property.go
- property_map.go
- signature.go
- type_def.go
- type_ref.go
- type_spec.go
- types.go