2 #include ATOKPTR_H // define smart pointers
4 class ANTLRToken : public ANTLRCommonToken {
8 ANTLRToken(ANTLRTokenType t, ANTLRChar *s) : ANTLRCommonToken(t,s)
11 ANTLRChar *getText() { return ""; }
12 void setText(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]+"