Calc.java
上传用户:afrynkmhm
上传日期:2007-01-06
资源大小:1262k
文件大小:1k
源码类别:

编译器/解释器

开发平台:

Others

  1. import java.io.*;
  2. import antlr.CommonAST;
  3. import antlr.collections.AST;
  4. import antlr.DumpASTVisitor;
  5. class Calc {
  6. public static void main(String[] args) {
  7. try {
  8. CalcLexer lexer = new CalcLexer(new DataInputStream(System.in));
  9. CalcParser parser = new CalcParser(lexer);
  10. // Parse the input expression
  11. parser.expr();
  12. CommonAST t = (CommonAST)parser.getAST();
  13. // Print the resulting tree out in LISP notation
  14. System.out.println(t.toStringList());
  15. CalcTreeWalker walker = new CalcTreeWalker();
  16. // Traverse the tree created by the parser
  17. walker.expr(t);
  18. t = (CommonAST)walker.getAST();
  19. System.out.println(t.toStringList());
  20. } catch(Exception e) {
  21. System.err.println("exception: "+e);
  22. }
  23. }
  24. }