Browsable DotNET System Reflection 1.2 Grammar

CC-BY

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

Summary

Syntax

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]::MethodBase
MethodBase ::=
	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]::ε

GrammarLabMaintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated in September 2015. []