Melt Grammar Rules
: attribute Id '::' Type ';'
| attribute Id '::' Type AttributeModifiers ';'
: synthesized
| inherited
: '(' Expr ')'
| QName '(' Exprs ')'
| Expr '.' QName
| Expr '.' QName '(' Exprs ')'
| true
| false
| Expr '&&' Expr
| Expr '||' Expr
| '!' Expr
| Expr '>' Expr
| Expr '<' Expr
| Expr '>=' Expr
| Expr '<=' Expr
| Expr '==' Expr
| Expr '!=' Expr
| if Expr then Expr else Expr %prec IFTHENELSE
| int_const
| real_const
| Expr '+' Expr
| Expr '-' Expr
| Expr '*' Expr
| Expr '/' Expr
| '-' Expr
| string_const
| Expr '++' Expr
| length '(' Expr ')'
| indexof '(' Expr ',' Expr ')'
| substring '(' Expr ',' Expr ',' Expr ')'
| parse '(' Type ',' Expr ')'
| parse '(' Type ',' '[' ParseStmt ']' ')'
| read '(' Expr ')'
| error_kwd '(' Expr ')'
| eval Expr '@' '{' AttributeDefs '}'
| cast '(' Type ',' Expr ')'
| reference '(' Expr ')'
: FUN___PARSE GENERATEDSignature '@_@_@' Root '@_@_@'
: generated_id
: grammar QName ';'
: id_const
: import QName ';'
| import QName using ImportItemList ';'
| import QName hiding ImportItemList ';'
| import QName as QName ';'
: Id
| Id '.' QName
| Id '.' QName '.' QName
: start
: Id '::' Type
: nonterminal Id ';'
| nonterminal Id NTModifiers ';'
: attribute AttributeRef occurs on OccursOnList
: production Id ':' NamedSignature '{' ProductionBody '}'
| production Id ':' ProductionModifiers ':' NamedSignature '{' ProductionBody '}'
: concrete
| abstract
| precedence '=' int_const
: forwards to Expr ';'
| local attribute Id ':' Type ';'
: Id
| Id ':' QName
: reg_expr_const
: ignore
| association '=' left
| association '=' right
| association '=' none
| precedence '=' int_const
| lexer precedence '=' int_const
: boolean
| integer
| real
| string
| reference Type
| production '(' Signature ')'
'Used-In' Rules
'::' is used in these productions:
'::=' is used in these productions:
':' is used in these productions:
'!' is used in these productions:
'!=' is used in these productions:
'/' is used in these productions:
'.' is used in these productions:
'-' is used in these productions:
'(' is used in these productions:
')' is used in these productions:
'[' is used in these productions:
']' is used in these productions:
'{' is used in these productions:
'}' is used in these productions:
'@_@_@' is used in these productions:
'@' is used in these productions:
'*' is used in these productions:
'&&' is used in these productions:
'+' is used in these productions:
'++' is used in these productions:
'<' is used in these productions:
'<=' is used in these productions:
'=' is used in these productions:
'==' is used in these productions:
'>' is used in these productions:
'>=' is used in these productions:
'|' is used in these productions:
'||' is used in these productions:
abstract is used in these productions:
as is used in these productions:
association is used in these productions:
attribute is used in these productions:
boolean is used in these productions:
cast is used in these productions:
concrete is used in these productions:
else is used in these productions:
error_kwd is used in these productions:
eval is used in these productions:
false is used in these productions:
forwards is used in these productions:
FUN___PARSE is used in these productions:
generated_id is used in these productions:
grammar is used in these productions:
hiding is used in these productions:
id_const is used in these productions:
Id
if is used in these productions:
ignore is used in these productions:
import is used in these productions:
indexof is used in these productions:
inherited is used in these productions:
int_const is used in these productions:
integer is used in these productions:
left is used in these productions:
length is used in these productions:
lexer is used in these productions:
local is used in these productions:
none is used in these productions:
nonterminal is used in these productions:
occurs is used in these productions:
on is used in these productions:
parse is used in these productions:
precedence is used in these productions:
production is used in these productions:
read is used in these productions:
real is used in these productions:
real_const is used in these productions:
reference is used in these productions:
reg_expr_const is used in these productions:
right is used in these productions:
start is used in these productions:
string is used in these productions:
string_const is used in these productions:
substring is used in these productions:
synthesized is used in these productions:
terminal is used in these productions:
then is used in these productions:
to is used in these productions:
true is used in these productions:
using is used in these productions: