test.g
来自「本工具提供一个词法分析器和语法分析器的集成开发环境」· G 代码 · 共 46 行
G
46 行
/* This is test.g which tests a simple DLG-based scanner * with user-defined tokens *//* Here, we use #tokdefs to define token types, but still let DLG do the * lexing. ANTLR will not create a tokens.h file. */#tokdefs "mytokens.h"<<#include "DLGLexer.h" /* include definition of DLGLexer. * This cannot be generated automatically because * ANTLR has no idea what you will call this file * with the DLG command-line options. */typedef ANTLRCommonToken ANTLRToken;int main(){ ANTLRTokenPtr aToken = new ANTLRToken; DLGFileInput in(stdin); DLGLexer scan(&in); ANTLRTokenBuffer pipe(&scan); scan.setToken(mytoken(aToken)); Expr parser(&pipe); parser.init(); parser.e(); return 0;}>>#token "[\ \t\n]+" <<skip();>>class Expr { /* Define a grammar class */e : IDENTIFIER NUMBER "@" <<fprintf(stderr, "text is %s,%s\n", $1->getText(), $2->getText());>> ;}#token IDENTIFIER "[a-z]+"#token NUMBER "[0-9]+"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?