Class RexLiteral

class RexLiteral : public RexScalar

Public Functions

RexLiteral(const int64_t val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision)
RexLiteral(const double val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision)
RexLiteral(const std::string &val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision)
RexLiteral(const bool val, const SQLTypes type, const SQLTypes target_type, const unsigned scale, const unsigned precision, const unsigned target_scale, const unsigned target_precision)
RexLiteral(const SQLTypes target_type)
template<class T>
T getVal() const
SQLTypes getType() const
SQLTypes getTargetType() const
unsigned getScale() const
unsigned getPrecision() const
unsigned getTargetScale() const
unsigned getTargetPrecision() const
std::string toString() const
size_t toHash() const
std::unique_ptr<RexLiteral> deepCopy() const

Private Members

const boost::variant<int64_t, double, std::string, bool, void *> literal_
const SQLTypes type_
const SQLTypes target_type_
const unsigned scale_
const unsigned precision_
const unsigned target_scale_
const unsigned target_precision_