aboutsummaryrefslogtreecommitdiff
path: root/src/nodes.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nodes.h')
-rw-r--r--src/nodes.h17
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_