treelite
dump.cc
Go to the documentation of this file.
1 
6 #include "./builder.h"
7 
8 namespace {
9 
10 void get_dump_from_node(std::ostringstream* oss,
11  const treelite::compiler::ASTNode* node,
12  int indent) {
13  (*oss) << std::string(indent, ' ') << node->GetDump() << "\n";
14  for (const treelite::compiler::ASTNode* child : node->children) {
15  CHECK(child);
16  get_dump_from_node(oss, child, indent + 2);
17  }
18 }
19 
20 } // anonymous namespace
21 
22 namespace treelite {
23 namespace compiler {
24 
25 DMLC_REGISTRY_FILE_TAG(dump);
26 
27 std::string ASTBuilder::GetDump() const {
28  std::ostringstream oss;
29  get_dump_from_node(&oss, this->main_node, 0);
30  return oss.str();
31 }
32 
33 } // namespace compiler
34 } // namespace treelite
AST Builder class.