Update of /cvsroot/bprocessor/model/src/etc
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv28303/src/etc
Added Files:
expression.g
Log Message:
Added an expression grammar
--- NEW FILE: expression.g ---
header {
package net.sourceforge.bprocessor.model.parser;
}
class ExprLexer extends Lexer;
options {
k=2; // needed for newline junk
charVocabulary='\u0000'..'\u007F'; // allow ascii
}
LPAREN: '(' ;
RPAREN: ')' ;
PLUS : '+' ;
MINUS : '-' ;
STAR : '*' ;
INT : ('0'..'9')+ ;
WS : ( ' '
| '\r' '\n'
| '\n'
| '\t'
)
{$setType(Token.SKIP);}
;
class ExprParser extends Parser;
expr: mexpr ((PLUS|MINUS) mexpr)*
;
mexpr
: atom (STAR atom)*
;
atom: INT
| LPAREN expr RPAREN
;
|