summaryrefslogtreecommitdiff
path: root/impl/Operator.hpp
blob: 9f17cbf53c2548a2c0574b4235ff5813a6979afd (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef OPERATOR_H
#define OPERATOR_H

#include <map>
#include <string>
#include <vector>
#include "Expression.hpp"

template<typename T>
struct Operator {
  virtual const T eval(const std::vector< Expression<T> >&, const std::map<std::string, T>&) const = 0;
  virtual std::string output() const = 0;
};

#include "Expression.hpp"

#endif