Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (expression | FLOAT) '(' -> (expression | FLOAT) '*('
- grammar Test;
- expression
- : //FLOAT '(' -> (FLOAT '*(')+
- | add EOF!
- ;
- term
- :
- | '(' add ')'
- | FLOAT
- | IMULT
- ;
- IMULT
- : (add ('(' add)*) -> (add ('*' add)*)
- ;
- negation
- : '-'* term
- ;
- unary
- : ('+' | '-')* negation
- ;
- mult
- : unary (('*' | '/') unary)*
- ;
- add
- : mult (('+' | '-') mult)*
- ;
- ID : ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')*
- ;
- FLOAT
- : ('0'..'9')+ '.' ('0'..'9')*// EXPONENT?
- | '.' ('0'..'9')+ //EXPONENT?
- | ('0'..'9')+ //EXPONENT
- ;
- WS : ( ' '
- | 't'
- | 'r'
- | 'n'
- ) {$channel=HIDDEN;}
- ;
- imult
- : FLOAT '(' -> FLOAT '*('
- ;
- IMULT / imult
- : expression '(' -> expression '*'
- ;
- tokens { ABSTRACTTOKEN; }
- imult
- : FLOAT '(' -> ^(ABSTRACTTOKEN FLOAT)
- ;
Add Comment
Please, Sign In to add comment