module languages/java-15/expressions/Priorities
imports
languages/java-15/lexical/Identifiers
languages/java-15/expressions/Main
exports
context-free priorities
Expr "." "new" TypeArgs? Id TypeArgs? "(" {Expr ","}* ")" ClassBody? -> Expr
> {right:
Expr "++" -> Expr
Expr "--" -> Expr
}
context-free priorities
{right:
Expr "++" -> Expr
Expr "--" -> Expr
}
> { "(" PrimType ")" Expr -> Expr
"(" RefType ")" Expr -> Expr
}
context-free priorities
"(" PrimType ")" Expr -> Expr
> {left:
Expr "*" Expr -> Expr
Expr "/" Expr -> Expr
Expr "%" Expr -> Expr
}
context-free priorities
"(" RefType ")" Expr -> Expr
> {
"++" Expr -> Expr
"--" Expr -> Expr
"+" Expr -> Expr
"-" Expr -> Expr
}
context-free priorities
{
Expr ArraySubscript -> ArrayAccess
Expr "." Id -> FieldAccess
Expr "." TypeArgs? Id -> MethodSpec
}
> {right:
Expr "++" -> Expr
Expr "--" -> Expr
}
> {
"++" Expr -> Expr
"--" Expr -> Expr
"+" Expr -> Expr
"-" Expr -> Expr
"~" Expr -> Expr
"!" Expr -> Expr
}
> {left:
Expr "*" Expr -> Expr
Expr "/" Expr -> Expr
Expr "%" Expr -> Expr
}
> {left:
Expr "+" Expr -> Expr
Expr "-" Expr -> Expr
}
> {left:
Expr "<<" Expr -> Expr
Expr ">>" Expr -> Expr
Expr ">>>" Expr -> Expr
}
> {left:
Expr "instanceof" RefType -> Expr
Expr "<" Expr -> Expr
Expr ">" Expr -> Expr
Expr "<=" Expr -> Expr
Expr ">=" Expr -> Expr
}
> {left:
Expr "==" Expr -> Expr
Expr "!=" Expr -> Expr
}
> Expr "&" Expr -> Expr
> Expr "^" Expr -> Expr
> Expr "|" Expr -> Expr
> Expr "&&" Expr -> Expr
> Expr "||" Expr -> Expr
> Expr CondMid Expr -> Expr
> {right:
LHS "=" Expr -> Expr
LHS "*=" Expr -> Expr
LHS "/=" Expr -> Expr
LHS "%=" Expr -> Expr
LHS "+=" Expr -> Expr
LHS "-=" Expr -> Expr
LHS "<<=" Expr -> Expr
LHS ">>=" Expr -> Expr
LHS ">>>=" Expr -> Expr
LHS "&=" Expr -> Expr
LHS "^=" Expr -> Expr
LHS "|=" Expr -> Expr
}