The base class that is extended to:

Creating a Value codegen

Within some AST C++ Class

class ExprAST {
public:
  virtual ~ExprAST() = default;
  virtual Value *codegen() = 0;
};