⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 instrmain.java

📁 Java写的词法/语法分析器。可生成JAVA语言或者是C++的词法和语法分析器。并可产生语法分析树和对该树进行遍历
💻 JAVA
字号:
import java.io.*;import antlr.*;import antlr.collections.*;import antlr.debug.misc.*;class InstrMain {  /** Parser will query filter for information */  public static TokenStreamHiddenTokenFilter filter;public static void main(String[] args) {  InstrLexer lexer = new InstrLexer(new DataInputStream(System.in));  lexer.setTokenObjectClass("antlr.CommonHiddenStreamToken");  filter = new TokenStreamHiddenTokenFilter(lexer);  filter.hide(InstrParser.WS);  filter.hide(InstrParser.SL_COMMENT);  InstrParser parser = new InstrParser(filter);  parser.setASTNodeClass("antlr.CommonASTWithHiddenTokens");  try {    // Parse the input statements    parser.slist();  }  catch (IOException io) {    System.err.println("IOException while parsing");  }  catch(ParserException e) {    System.err.println("exception: "+e);  }  CommonASTWithHiddenTokens t =    (CommonASTWithHiddenTokens)parser.getAST();/* UNCOMMENT THIS TO SEE THE TREE STRUCTURE  ASTFactory factory = new ASTFactory();  AST r = factory.create(0,"AST ROOT");  r.setFirstChild(t);  ASTFrame frame = new ASTFrame("Preserve Whitespace Example AST", r);  frame.setVisible(true);*/  InstrTreeWalker walker = new InstrTreeWalker();  try {    walker.slist(t);  }  catch(ParserException e) {    System.err.println("exception: "+e);  }}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -