diff options
Diffstat (limited to 'src/nodes.h')
-rw-r--r-- | src/nodes.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/nodes.h b/src/nodes.h index e90669c..6783f3d 100644 --- a/src/nodes.h +++ b/src/nodes.h @@ -3,13 +3,14 @@ #include <string> -#include "utils.h" - namespace SimpleParser { +enum class TokenType : int8_t; + enum class NodeType { OPERAND, OPERATOR, + CONSTANT, }; class Node { @@ -50,6 +51,18 @@ class OperandNode: public Node { double value_; }; +class ConstantNode: public Node { + public: + explicit ConstantNode(std::string); + + virtual double solve(); + virtual NodeType getType(); + virtual std::string print(); + + private: + std::string identifier_; +}; + } #endif // PARSER_SRC_NODES_H_ |