package
cx.ath.journeyman.JavaTranslator;
import
java.io.FileInputStream;
java.io.IOException;
org.antlr.v4.runtime.ANTLRInputStream;
org.antlr.v4.runtime.CommonTokenStream;
org.antlr.v4.runtime.tree.ParseTree;
org.antlr.v4.runtime.tree.ParseTreeWalker;
cx.ath.journeyman.JavaTranslator.generated.JavaLexer;
cx.ath.journeyman.JavaTranslator.generated.JavaParser;
public
class
JavaTranslator {
/**
* @param args
*/
static
void
main(String[] args) {
String Directory =
"C:\\temp\\"
;
String filename =
"Main.java"
String fullFilename = Directory + filename;
try
{
FileInputStream fis =
new
FileInputStream(fullFilename);
ANTLRInputStream input =
ANTLRInputStream(fis);
JavaLexer lexer =
JavaLexer(input);
CommonTokenStream tokens =
CommonTokenStream(lexer);
JavaParser parser =
JavaParser(tokens);
ParseTree tree = parser.compilationUnit();
// parse
System.out.println(tree.toStringTree());
ParseTreeWalker walker =
ParseTreeWalker();
// create standard
// walker
ExtractInterfaceListener extractor =
ExtractInterfaceListener(
parser,
"c:\\temp\\"
+ filename);
walker.walk(extractor, tree);
// initiate walk of tree with listener
}
catch
(IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();