TreeLang/parser.cpp

31 lines
497 B
C++

#include "global.h"
// base class
class ExprAST {
public:
virtual ~ExprAST() {}
};
// class for double
class DoubleExprAST : public ExprAST {
double Val;
public:
DoubleExprAST(double Val) : Val(Val) {}
};
// class for integer
class IntegerExprAST : public ExprAST {
long Val;
public:
IntegerExprAST(long Val) : Val(Val) {}
};
// class for variable
class VariableExprAST : public ExprAST {
std::string Name;
public:
VariableExprAST(const std::string &Name) : Name(Name) {}
};