Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/DotNET_SystemReflection/extracted
Source used for this grammar: Jean-Marc Prieur, DotNET System Reflection 1.2, DotNET_SystemReflection.ecore
, 2006/04/05
Integer
, String
, Boolean
, NamedElement
, Assembly
, ManifestResource
, Module
, MemberInfo
, PropertyInfo
, FieldInfo
, EventInfo
, ParameterInfo
, MethodBase
, MethodInfo
, ConstructorInfo
, Type
, EventAttributes
, FieldAttributes
, GenericParameterAttributes
, MemberTypes
, MethodAttributes
, ParameterAttributes
, PropertyAttributes
, TypeAttributes
), 0 root (—), 2 top (NamedElement
, MemberTypes
), 0 bottom (—).[location]
, [imageRuntimeVersion]
, [evidence]
, [codeBase]
, [entryPoint]
, [modules]
, [manifestModule]
, [referencedAssembly]
, [manifest]
, [content]
, [assembly]
2, [qualifiedName]
, [scopeName]
, [types]
, [propertyType]
, [attributes]
5, [fieldType]
, [isMulticast]
, [eventHandlerType]
, [defaultValue]
, [position]
, [parameterType]
, [member]
, [returnType]
, [parameters]
, [namespace]
, [genericParameterAttributes]
, [typeAttributes]
, [baseType]
, [module]
, [interfaces]
, [members]
, [None]
2, [ReservedMask]
5, [RTSpecialName]
4, [SpecialName]
5, [FieldAccessMask]
, [PrivateScope]
2, [Private]
2, [Assembly]
2, [Family]
2, [FamANDAssem]
, [FamORAssem]
2, [Public]
4, [Shared]
, [InitOnly]
, [Literal]
, [NotSerialized]
, [PinvokeImpl]
, [HasFieldMarshal]
, [HasDefault]
2, [HasFieldRVA]
, [Static]
2, [HasElementType]
, [Abstract]
3, [AnsiClass]
2, [AutoClass]
2, [AutoLayout]
2, [ByRef]
, [Class]
2, [COMObject]
, [Contextful]
, [Enum]
, [ExplicitLayout]
2, [Import]
2, [Interface]
2, [LayoutSequential]
, [MarshalByRef]
, [NestedAssembly]
2, [NestedFamADNAssem]
2, [NestedFamily]
2, [NestedFamORAssem]
2, [NestedPrivate]
2, [NestedPublic]
2, [NotPublic]
2, [Pointer]
, [Primitive]
, [Sealed]
2, [Serializable]
2, [UnicodeClass]
2, [ValueType]
, [Constructor]
, [Event]
, [Field]
, [Method]
, [Property]
, [TypeInfo]
, [Custom]
, [NestedType]
, [All]
, [ChekedAccessOnOverride]
, [FamADNAssem]
, [Final]
, [HasSecurity]
, [HideBySig]
, [MemberAccessMask]
, [NewSlot]
, [PInvokeImpl]
, [RequiredSecObject]
, [ReuseSlot]
, [UnmanagedExport]
, [Virtual]
, [VtableLayoutMask]
, [HasDefaultMArshal]
, [In]
, [Lcid]
, [Optional]
2, [Out]
, [Reserved3]
, [Reserved4]
, [RetVal]
, [NotSupported]
, [Read]
, [Required]
, [Write]
, [BeforFieldInit]
, [ClassSemanticsMask]
, [HasSecutity]
, [LayoutMask]
, [SequentialLayout]
, [StringFormatMask]
, [VisibilityMask]
.Integer ::= integer
String ::= string
Boolean ::= "true" "false"
NamedElement ::= Assembly
NamedElement ::= Module
NamedElement ::= MemberInfo
NamedElement ::= ParameterInfo
Assembly ::= [location]::String [imageRuntimeVersion]::String [evidence]::String [codeBase]::String [entryPoint]::MethodInfo [modules]::Module[manifestModule]::Module [referencedAssembly]::Assembly [manifest]::ManifestResource
ManifestResource ::= [content]::String [assembly]::Assembly
Module ::=
[qualifiedName]::String [scopeName]::String [assembly]::Assembly [types]::Type
MemberInfo ::= PropertyInfo
MemberInfo ::= FieldInfo
MemberInfo ::= EventInfo
MemberInfo ::= MethodBase
MemberInfo ::= Type
PropertyInfo ::=
[propertyType]::Type [attributes]::PropertyAttributes
FieldInfo ::=
[fieldType]::Type [attributes]::FieldAttributes
EventInfo ::= [isMulticast]::Boolean [attributes]::EventAttributes [eventHandlerType]::Type
ParameterInfo ::=
[defaultValue]::String [position]::Integer [attributes]::ParameterAttributes
[parameterType]::Type [member]::MethodBaseMethodBase ::= MethodInfo
MethodBase ::= ConstructorInfo
MethodInfo ::= [returnType]::Type
ConstructorInfo ::= [attributes]::MethodAttributes[parameters]::ParameterInfo
Type ::= [namespace]::String [genericParameterAttributes]::GenericParameterAttributes[typeAttributes]::TypeAttributes [baseType]::Type [module]::Module [interfaces]::Type [members]::MemberInfo
EventAttributes ::= [None]::ε [ReservedMask]::ε [RTSpecialName]::ε [SpecialName]::ε
FieldAttributes ::= [FieldAccessMask]::ε [PrivateScope]::ε [Private]::ε [Assembly]::ε [Family]::ε [FamANDAssem]::ε [FamORAssem]::ε [Public]::ε [Shared]::ε [InitOnly]::ε [Literal]::ε [NotSerialized]::ε [SpecialName]::ε [PinvokeImpl]::ε [ReservedMask]::ε [RTSpecialName]::ε [HasFieldMarshal]::ε [HasDefault]::ε [HasFieldRVA]::ε [Static]::ε
GenericParameterAttributes ::= [HasElementType]::ε [Abstract]::ε [AnsiClass]::ε [AutoClass]::ε [AutoLayout]::ε [ByRef]::ε [Class]::ε [COMObject]::ε [Contextful]::ε [Enum]::ε [ExplicitLayout]::ε [Import]::ε [Interface]::ε [LayoutSequential]::ε [MarshalByRef]::ε [NestedAssembly]::ε [NestedFamADNAssem]::ε [NestedFamily]::ε [NestedFamORAssem]::ε [NestedPrivate]::ε [NestedPublic]::ε [NotPublic]::ε [Pointer]::ε [Primitive]::ε [Public]::ε [Sealed]::ε [Serializable]::ε [SpecialName]::ε [UnicodeClass]::ε [ValueType]::ε
MemberTypes ::= [Constructor]::ε [Event]::ε [Field]::ε [Method]::ε [Property]::ε [TypeInfo]::ε [Custom]::ε [NestedType]::ε [All]::ε
MethodAttributes ::= [Abstract]::ε [Assembly]::ε [ChekedAccessOnOverride]::ε [FamADNAssem]::ε [Family]::ε [FamORAssem]::ε [Final]::ε [HasSecurity]::ε [HideBySig]::ε [MemberAccessMask]::ε [NewSlot]::ε [PInvokeImpl]::ε [Private]::ε [PrivateScope]::ε [Public]::ε [RequiredSecObject]::ε [ReservedMask]::ε [ReuseSlot]::ε [RTSpecialName]::ε [SpecialName]::ε [Static]::ε [UnmanagedExport]::ε [Virtual]::ε [VtableLayoutMask]::ε
ParameterAttributes ::= [HasDefault]::ε [HasDefaultMArshal]::ε [In]::ε [Lcid]::ε [None]::ε [Optional]::ε [Out]::ε [Reserved3]::ε [Reserved4]::ε [ReservedMask]::ε [RetVal]::ε
PropertyAttributes ::= [NotSupported]::ε [Optional]::ε [Read]::ε [Required]::ε [Write]::ε
TypeAttributes ::= [Abstract]::ε [AnsiClass]::ε [AutoClass]::ε [AutoLayout]::ε [BeforFieldInit]::ε [Class]::ε [ClassSemanticsMask]::ε [ExplicitLayout]::ε [HasSecutity]::ε [Import]::ε [Interface]::ε [LayoutMask]::ε [NestedAssembly]::ε [NestedFamADNAssem]::ε [NestedFamily]::ε [NestedFamORAssem]::ε [NestedPrivate]::ε [NestedPublic]::ε [NotPublic]::ε [Public]::ε [ReservedMask]::ε [RTSpecialName]::ε [Sealed]::ε [SequentialLayout]::ε [Serializable]::ε [SpecialName]::ε [StringFormatMask]::ε [UnicodeClass]::ε [VisibilityMask]::ε