[ozulis] fixing some memory leaks
[ozulis.git] / src / ozulis / visitors / scope-builder.hh
bloba9e4ff6231604d4f9b24bb845cdafc40b45cf031
1 #ifndef VISITORS_SCOPE_BUILDER_HH
2 # define VISITORS_SCOPE_BUILDER_HH
4 # include <ozulis/ast/scope.hh>
5 # include <ozulis/visitors/visitor.hh>
7 namespace ozulis
9 namespace visitors
11 /// @defgroup Visitors
12 /**
13 * @brief Creates symbol tables
14 * @ingroup Visitors
16 class ScopeBuilder : public Visitor<ScopeBuilder>
18 public:
19 ScopeBuilder();
21 std::string nextId();
23 typedef std::vector<uint32_t> blockIds_t;
25 ast::FilePtr file;
26 ast::Scope * parent;
27 blockIds_t blockIds;
29 static void initBase();
31 private:
32 int32_t nextId_;
37 #endif /* !VISITORS_SCOPE_BUILDER_HH */