From 90478c9a3a77c9afd22cc238324154e6ab53f38b Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Thu, 24 Sep 2020 18:15:00 +0200
Subject: [PATCH] Add (temporarily) output of functions sub-AST

---
 src/language/PugsParser.cpp | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/language/PugsParser.cpp b/src/language/PugsParser.cpp
index 75842ad02..efddefd1a 100644
--- a/src/language/PugsParser.cpp
+++ b/src/language/PugsParser.cpp
@@ -78,6 +78,16 @@ parser(const std::string& filename)
 
     std::cout << ASTPrinter{*root_node} << '\n';
 
+    auto& function_table = root_node->m_symbol_table->functionTable();
+
+    for (size_t i_function = 0; i_function < function_table.size(); ++i_function) {
+      const auto& function_descriptor = function_table[i_function];
+      std::cout << "function " << rang::fgB::magenta << function_descriptor.name() << rang::style::reset << '\n';
+      std::cout << ASTPrinter(function_descriptor.domainMappingNode());
+      std::cout << ASTPrinter(function_descriptor.definitionNode());
+      std::cout << "--------\n";
+    }
+
     ExecutionPolicy exec_all;
     root_node->execute(exec_all);
     std::cout << *(root_node->m_symbol_table) << '\n';
-- 
GitLab