Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/PRR/extracted
Source used for this grammar: Anas Abouzahra, PRR (Production Rule Representation) 0.1, PRR.ecore
, 2006/06/22
Element
, NamedElement
, RuleSet
, Rule
, RuleAction
, RuleCondition
, Binding
, RuleVariable
, DeleteAction
, CreateAction
, AssignAction
, InvokeAction
, IteratorExp
, LoopExp
, OperatorCallExp
, OperationCallExp
, CollectionOperationCallExp
, StringExp
, BooleanExp
, IntegerExp
, RealExp
, NavigationOrAttributeCallExp
, Iterator
, VariableDeclaration
, VariableExp
, TypeExp
, AllInstanceExp
, OclType
, StringType
, RealType
, BooleanType
, IntegerType
, Integer
, String
, Boolean
), 0 root (—), 19 top (Element
, IteratorExp
, LoopExp
, OperatorCallExp
, OperationCallExp
, CollectionOperationCallExp
, StringExp
, BooleanExp
, IntegerExp
, RealExp
, NavigationOrAttributeCallExp
, Iterator
, VariableExp
, TypeExp
, AllInstanceExp
, StringType
, RealType
, BooleanType
, IntegerType
), 10 bottom (PRRExpressions/TypeExp
, PRRExpressions/Iterator
, Double
, PRRExpressions/OclExpression
10, PRRTypes/OclType
3, PRRExpressions/VariableExp
, PRRExpressions/VariableDeclaration
2, PRRExpressions/LoopExp
, OclExpression
, PRRExpressions/AllInstanceExp
).[location]
, [commentsBefore]
, [commentsAfter]
, [rules]
, [binding]
, [condition]
, [actions]
, [ruleOwner]
, [actionOwner]
, [ruleConditionOwner]
, [conditionExp]
, [bindingOwner]
, [ruleVariable]
, [ruleVariableOwner]
, [filter]
, [objValue]
2, [insertArguments]
, [aValue]
, [invocation]
, [name]
2, [body]
, [iterators]
, [arguments]
, [operationName]
, [signature]
, [stringSymbol]
, [booleanSymbol]
, [integerSymbol]
, [realSymbol]
, [loopExpr]
, [type]
, [varName]
, [variableExp]
, [referredVariable]
, [referredType]
, [sourceType]
, [variableDeclaration]
, [oclExpression]
, [appliedAllInstance]
, [typeExp]
.Element ::= NamedElement
Element ::= RuleSet
Element ::= RuleAction
Element ::= RuleCondition
Element ::= Binding
Element ::= OclExpression
Element ::= VariableDeclaration
Element ::= [location]::String [commentsBefore]::String[commentsAfter]::String
NamedElement ::= Rule
NamedElement ::= OclType
RuleSet ::=
[rules]::Rule
Rule ::=
[binding]::Binding [condition]::RuleCondition [actions]::RuleAction
[ruleOwner]::RuleSetRuleAction ::= DeleteAction
RuleAction ::= AssignAction
RuleAction ::= InvokeAction
RuleAction ::= CreateAction
RuleAction ::= [actionOwner]::Rule
RuleCondition ::= [ruleConditionOwner]::Rule [conditionExp]::PRRExpressions/OclExpression
Binding ::=
[bindingOwner]::Rule [ruleVariable]::RuleVariable
RuleVariable ::= [ruleVariableOwner]::Binding [filter]::PRRExpressions/OclExpression
DeleteAction ::= [objValue]::PRRExpressions/OclExpression
CreateAction ::=
[insertArguments]::PRRExpressions/OclExpression
AssignAction ::= [objValue]::PRRExpressions/OclExpression [aValue]::PRRExpressions/OclExpression
InvokeAction ::= [invocation]::PRRExpressions/OclExpression
IteratorExp ::= [name]::String
LoopExp ::=
[body]::PRRExpressions/OclExpression [iterators]::PRRExpressions/Iterator
OperatorCallExp ::= ε
OperationCallExp ::=
[arguments]::PRRExpressions/OclExpression
[operationName]::String [signature]::StringCollectionOperationCallExp ::= ε
StringExp ::= [stringSymbol]::String
BooleanExp ::= [booleanSymbol]::Boolean
IntegerExp ::= [integerSymbol]::Integer
RealExp ::= [realSymbol]::Double
NavigationOrAttributeCallExp ::= [name]::String
Iterator ::= [loopExpr]::PRRExpressions/LoopExp
VariableDeclaration ::=
[type]::PRRTypes/OclType [varName]::String [variableExp]::PRRExpressions/VariableExp
VariableExp ::= [referredVariable]::PRRExpressions/VariableDeclaration
TypeExp ::= [referredType]::PRRTypes/OclType
AllInstanceExp ::= [sourceType]::PRRTypes/OclType
OclType ::= [variableDeclaration]::PRRExpressions/VariableDeclaration[oclExpression]::PRRExpressions/OclExpression [appliedAllInstance]::PRRExpressions/AllInstanceExp [typeExp]::PRRExpressions/TypeExp
StringType ::= ε
RealType ::= ε
BooleanType ::= ε
IntegerType ::= ε
Integer ::= integer
String ::= string
Boolean ::= "true" "false"