]> gitweb.ps.run Git - toc/blobdiff - src/main.cpp
add namespace, private struct member grammar, change bracket style
[toc] / src / main.cpp
index a7742ac96324cd2417da33c71d09e6bd18e0c52a..4c78f5b20e5cc5b757b3aeef2295fb29d19e0fb6 100644 (file)
@@ -7,11 +7,13 @@
 #include "toc.h"\r
 #include "repr.h"\r
 #include "repr_get.h"\r
+#include "check.h"\r
 \r
 using namespace antlr4;\r
 \r
 \r
-int main(int argc, const char * argv[]) {\r
+int main(int argc, const char * argv[])\r
+{\r
   std::ifstream ifs("test.toc");\r
 \r
   ANTLRInputStream input(ifs);\r
@@ -23,7 +25,8 @@ int main(int argc, const char * argv[]) {
   TocParser::ProgContext * prog = parser.prog();\r
   tree::ParseTree * tree = prog;\r
 \r
-  if (parser.getNumberOfSyntaxErrors() > 0) {\r
+  if (parser.getNumberOfSyntaxErrors() > 0)\r
+  {\r
     std::cerr << "Parsing error" << std::endl;\r
     return 1;\r
   }\r
@@ -32,19 +35,16 @@ int main(int argc, const char * argv[]) {
 \r
   //std::cout << "Parse Tree: " << s << std::endl;\r
 \r
-  //toc(std::cout, prog);\r
+  Program prg = getProgram(prog);\r
+\r
+  tocProgram(std::cout, prg);\r
+\r
+  if (!checkProgram(prg))\r
+    std::cerr << "Error" << std::endl;\r
 \r
   //std::ofstream ofs("output.c");\r
-  //toc(ofs, prog);\r
+  //tocProg(ofs, prg);\r
   //ofs.close();\r
 \r
-  Program prg = getProgram(prog);\r
-  std::cout << "Variables:\n";\r
-  for (auto v : prg.variables)\r
-    std::cout << " " << v.name << endl;\r
-  std::cout << "Functions:\n";\r
-  for (auto f : prg.functions)\r
-    std::cout << " " << f.name << endl;\r
-\r
   return 0;\r
 }
\ No newline at end of file