
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: api/api2mol/concrete/extracted
Source used for this grammar: Javier Canovas, Frédéric Jouault, Jordi Cabot, Jesus Garcia Molina, api2mol.g, 2011-04-08 [api2mol.g]
mainRule, contextSection, defaultMetaclassSection, mapping, metaclassName, instanceName, section, newSection, multipleSection, propertySection, valueSection, statement, constructorCall, methodCall, variable, param), 0 root (—), 1 top (mainRule), 15 bottom (COLON 3, LPAREN 4, RCURLY, ID 12, RPAREN 4, COMMA 4, DEFAULT_METACLASS, AT 4, MULTIPLE, CONTEXT, SEMI 5, LCURLY, ENUM, NEW, DOT).mainRule ::= contextSection defaultMetaclassSection mapping
contextSection ::= AT CONTEXT instanceName COMMA instanceName SEMI
defaultMetaclassSection ::= AT DEFAULT_METACLASS ID LPAREN ID RPAREN SEMI
mapping ::= ENUM metaclassName COLON instanceName LCURLY section RCURLY
metaclassName ::= ID
instanceName ::= ID DOT ID
section ::= newSection multipleSection propertySection valueSection
newSection ::=
AT NEW constructorCallmultipleSection ::=
AT MULTIPLE statementpropertySection ::=
ID COLON statementvalueSection ::= ID COLON instanceName SEMI
statement ::= ID LPAREN variable COMMA variable RPAREN methodCall SEMI
constructorCall ::= ID LPAREN param COMMA param RPAREN SEMI
methodCall ::= ID LPAREN param COMMA param RPAREN
variable ::= ID
param ::= ID