Advertisement
Guest User

Untitled

a guest
Mar 28th, 2012
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.74 KB | None | 0 0
  1.     public static void parseSource(String file) {
  2.         try {
  3.             LEXER.setCharStream(new ANTLRFileStream(file, "UTF8"));
  4.  
  5.             CommonTokenStream tokens = new CommonTokenStream(LEXER);
  6.  
  7.             JavaParser parser = new JavaParser(tokens);
  8.  
  9.             System.out.println("file: " + file);
  10.  
  11.             System.out.println("    Lexer Start");
  12.             long start = System.currentTimeMillis();
  13.  
  14.             tokens.LT(1);
  15.             long lexerStop = System.currentTimeMillis();
  16.             System.out.println("      lexed in " + (lexerStop - start) + "ms.");
  17.  
  18.             System.out.println("    Parser Start");
  19.             long pStart = System.currentTimeMillis();
  20.             javaSource_return psrReturn = parser.javaSource();
  21.             long stop = System.currentTimeMillis();
  22.             System.out.println("      Parsed in " + (stop - pStart) + "ms.");
  23.  
  24.             Tree t = (Tree) psrReturn.getTree();
  25.  
  26.             try {
  27.                 if (parser.getNumberOfSyntaxErrors() == 0) {
  28.                     JavaToGeneric walker = new JavaToGeneric(new CommonTreeNodeStream(t));
  29.                     System.out.println("    AST Walk Start\n");
  30.                     pStart = System.currentTimeMillis();
  31.                     walker.sourceFile();
  32.                     stop = System.currentTimeMillis();
  33.                     System.out.println("\n      AST Walked in " + (stop - pStart) + "ms.");
  34.                 }
  35.             } catch (Exception w) {
  36.                 System.out.println("AST walk caused exception.");
  37.                 w.printStackTrace();
  38.             }
  39.  
  40.         } catch (IOException ex) {
  41.             ex.printStackTrace();
  42.         } catch (RecognitionException e) {
  43.             e.printStackTrace();
  44.         }
  45.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement