4 #include "TocLexer.h"
\r
5 #include "TocParser.h"
\r
9 #include "repr_get.h"
\r
10 #include "generic.h"
\r
11 //#include "check.h"
\r
13 using namespace antlr4;
\r
16 int main(int argc, const char * argv[])
\r
18 std::ifstream ifs("test/test.toc");
\r
20 ANTLRInputStream input(ifs);
\r
22 TocLexer lexer(&input);
\r
23 CommonTokenStream tokens(&lexer);
\r
25 TocParser parser(&tokens);
\r
26 TocParser::ProgContext * prog = parser.prog();
\r
27 tree::ParseTree * tree = prog;
\r
29 if (parser.getNumberOfSyntaxErrors() > 0)
\r
31 std::cerr << "Parsing error" << std::endl;
\r
35 //std::string s = tree->toStringTree(&parser) + "\n";
\r
36 //std::cout << "Parse Tree: " << s << std::endl;
\r
38 Program prg = getProgram(prog, nullptr);
\r
39 instantiateGenerics(prg);
\r
43 tocProgram(std::cout, prg);
\r
45 std::ofstream ofs("output.c");
\r
46 tocProgram(ofs, prg);
\r
49 catch (const char * e)
\r
51 std::cerr << "Error: " << e << std::endl;
\r