nitcc: introduce nitcc
[nit.git] / contrib / nitcc / t / inf5000-05-grammaire-arithmetique2.sablecc
1 Grammar arithmetique;
2 Lexer
3 int = ('0'..'9')+;
4 blank = ' ' | #9 | #10 | #13;
5
6 Parser
7 Ignored blank;
8
9 exps = exp*;
10
11 exp = {add:} exp '+' factor |
12       {min:} exp '-' factor |
13       {factor:} factor ;
14 factor = {mul:} factor '*' term |
15          {term:} term ;
16 term = {int:} int |
17        {par:} '(' exp ')' ;