Advertisement
Guest User

Untitled

a guest
Mar 20th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. package liczydlo_226162;
  2. import java.io.*;
  3. import org.antlr.runtime.*;
  4. import org.antlr.runtime.tree.*;
  5. import org.antlr.stringtemplate.*;
  6.  
  7.  
  8. public class Test_int {
  9. public static void main(String[] args) throws Exception {
  10.  
  11.  
  12. // Tworzymy analizator leksykalny i każemy mu czytać z stdin
  13. ANTLRInputStream input = new ANTLRInputStream(System.in);
  14. ExprLexer lexer = new ExprLexer(input);
  15.  
  16. // Tworzymy bufor na tokeny pomiędzy analizatorem leksykalnym a parserem
  17. CommonTokenStream tokens = new CommonTokenStream(lexer);
  18.  
  19.  
  20. // Tworzymy parser czytający z powyższego bufora
  21. ExprParser parser = new ExprParser(tokens);
  22.  
  23.  
  24. try {
  25. // Wywołujemy parser generujący drzewo startując od reguły prog (Z klasy Expr)
  26. ExprParser.prog_return root = parser.prog();
  27.  
  28. // Wypisujemy drzewo na standardowe wyjście
  29. System.out.println(((CommonTree)root.tree).toStringTree());
  30.  
  31. // Tworzymy bufor na węzły drzewa
  32. CommonTreeNodeStream nodes = new CommonTreeNodeStream(root.tree);
  33.  
  34. // Tworzymy parser drzew korzystający z powyższego bufora
  35. TExpr1 walker = new TExpr1(nodes);
  36.  
  37. // Wywołujemy parser drzew - startując od reguły prog (Tym razem z klasy TExpr1!)
  38. walker.prog();
  39.  
  40. } catch (RecognitionException e) {
  41. e.printStackTrace();
  42. }
  43. }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement