Created
March 13, 2018 16:13
-
-
Save lrlucena/aea07ad2f7f76835f2a7186ed9779216 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.io.IOException; | |
import org.antlr.v4.runtime.ANTLRInputStream; | |
import org.antlr.v4.runtime.CommonTokenStream; | |
import org.antlr.v4.runtime.tree.ParseTree; | |
import org.antlr.v4.runtime.tree.ParseTreeWalker; | |
public class Principal { | |
private static ParseTree parse(String programa) { | |
final ANTLRInputStream input = new ANTLRInputStream(programa); | |
final CalculadoraLexer lexer = new CalculadoraLexer(input); | |
final CommonTokenStream tokens = new CommonTokenStream(lexer); | |
final CalculadoraParser parser = new CalculadoraParser(tokens); | |
return parser.expressao(); | |
} | |
public static void main(String[] args) throws IOException { | |
String programa = args[0]; | |
final ParseTree tree = parse(programa); | |
final ParseTreeWalker walker = new ParseTreeWalker(); | |
final MeuListener listener = new MeuListener(); | |
walker.walk(listener, tree); | |
int p1 = listener.getPrograma(); | |
System.out.println(p1); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment