BNF for FIL_J.jj

NON-TERMINALS

Start ::= ( Instance )* <EOF>
Instance ::= <INSTANCE> ( <IDENTIFIER> ) ( "#" ( <NUMBER> ) | "(" ( <IDENTIFIER> ) ( <IDENTIFIER> ) ")" ) ";" ( Slot )* <END_INSTANCE> ";"
Slot ::= ( <IDENTIFIER> ) "=" ( Value ) ";"
Value ::= ( "+" | "-" )? ( <NUMBER> )
| <REAL>
| <STRING>
| <BINARY>
| <LOGICAL>
| <NULL>
| ( <IDENTIFIER> ) "#" ( <NUMBER> )
| ( <IDENTIFIER> ) "(" ( Value ) ")"
| <IDENTIFIER> InvocationList
| ( <IDENTIFIER> )
| "?" ( <IDENTIFIER> )
| "{" ( ValueList )? "}"
| "[" ( ValueList )? "]"
ValueList ::= ( Value ) ( "," ( Value ) )*
InvocationList ::= "." ( MethodCall ) ( "." ( MethodCall ) )*
MethodCall ::= ( <IDENTIFIER> ) "(" ( ValueList )? ")"