diff options
Diffstat (limited to 'c_compiler/include/primitives.hpp')
-rw-r--r-- | c_compiler/include/primitives.hpp | 31 |
1 files changed, 9 insertions, 22 deletions
diff --git a/c_compiler/include/primitives.hpp b/c_compiler/include/primitives.hpp index 2eeaa19..f4c5087 100644 --- a/c_compiler/include/primitives.hpp +++ b/c_compiler/include/primitives.hpp @@ -3,38 +3,25 @@ #include "ast.hpp" -#include <string> -class Variable : public Base { -private: - std::string id; +class Declarator : public BasePrimitive { public: - Variable(const std::string& _id) : id(_id) {} + Declarator(const std::string& _id) : BasePrimitive(_id) {} - virtual void print() const { - std::cout << "<Variable id=\"" << id << "\" />" << std::endl; - } - - virtual void push(const Base* var) const { - std::cerr << "Error: Can't call this function on this class" << std::endl; - (void)var; + virtual void printxml() const { + std::cout << "<Variable id=\"" << id << "\" />" << std::endl; } }; -class Parameter : public Base { -private: - std::string id; + +class Parameter : public BasePrimitive { public: - Parameter(const std::string& _id) : id(_id) {} + Parameter(const std::string& _id) : BasePrimitive(_id) {} - virtual void print() const { + virtual void printxml() const { std::cout << "<Parameter id=\"" << id << "\" />" << std::endl; } - - virtual void push(const Base* var) const { - std::cerr << "Error: Can't call this function on this class" << std::endl; - (void)var; - } }; + #endif |