summaryrefslogtreecommitdiff
path: root/evaluator.h
diff options
context:
space:
mode:
Diffstat (limited to 'evaluator.h')
-rw-r--r--evaluator.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/evaluator.h b/evaluator.h
index f3bbe41..e64f27b 100644
--- a/evaluator.h
+++ b/evaluator.h
@@ -2,11 +2,27 @@
#ifndef EVALUATOR_H_
#define EVALUATOR_H_
-class value;
+#include <string>
+
+#include "value.h"
class evaluator {
public:
- virtual void evaluate(value l, value r);
+ evaluator(const char * display_name);
+ virtual value * evaluate(
+ value * l,
+ value * r);
+
+ virtual std::string to_string();
+private:
+ const char * m_display_name;
};
+class add_evaluator : public evaluator{
+public:
+ add_evaluator();
+ value * evaluate(
+ float_value * l,
+ float_value * r);
+};
#endif //EVALUATOR_H_