aboutsummaryrefslogtreecommitdiffstats
path: root/c_compiler/include/translation_unit.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'c_compiler/include/translation_unit.hpp')
-rw-r--r--c_compiler/include/translation_unit.hpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/c_compiler/include/translation_unit.hpp b/c_compiler/include/translation_unit.hpp
index 6601994..dd8ff03 100644
--- a/c_compiler/include/translation_unit.hpp
+++ b/c_compiler/include/translation_unit.hpp
@@ -6,9 +6,23 @@
class TranslationUnit : public Node {
protected:
- // TODO includes all the variable declarations and function definitions
+ std::vector<Node* > m_transUnit;
public:
- TranslationUnit() {}
+ TranslationUnit(Node* decl) {
+ m_transUnit.push_back(decl);
+ }
+
+ virtual void print() const {
+ for(auto& i : m_transUnit) {
+ i->print();
+ }
+ }
+ virtual void printxml() const {}
+ virtual void printasm() const {}
+
+ void push(Node* decl) {
+ m_transUnit.push_back(decl);
+ }
};