2
#include ATOKPTR_H // define smart pointers
4
class ANTLRToken : public ANTLRCommonToken {
8
ANTLRToken(ANTLRTokenType t, ANTLRChar *s) : ANTLRCommonToken(t,s)
11
ANTLRChar *getText() const { return ""; }
12
void setText(const ANTLRChar *s) { ; }
13
virtual ANTLRAbstractToken *makeToken(ANTLRTokenType t, char *s, int line)
15
ANTLRToken *tk = new ANTLRToken(t,s);
22
#include "PBlackBox.h"
26
ParserBlackBox<DLGLexer, Expr, ANTLRToken> p(stdin);
33
#token "[\ \t\n]+" <<skip();>>
39
<<printf("result is %d\n", r);>>
44
e2>[$r] ( "\+" e2>[b] <<$r+=b;>> )*
48
: NUMBER <<$r=mytoken($1)->muck;>>
49
( "\*" NUMBER <<$r*=mytoken($2)->muck;>> )*
54
#token NUMBER "[0-9]+"