Class ExpressionRange

class ExpressionRange

Public Functions

int64_t getIntMin() const
int64_t getIntMax() const
double getFpMin() const
double getFpMax() const
void setIntMin(const int64_t int_min)
void setIntMax(const int64_t int_max)
void setIntInvalidRange()
void setFpMin(const double fp_min)
void setFpMax(const double fp_max)
ExpressionRangeType getType() const
int64_t getBucket() const
bool hasNulls() const
void setHasNulls()
void setNulls(bool n)
ExpressionRange operator+(const ExpressionRange &other) const
ExpressionRange operator-(const ExpressionRange &other) const
ExpressionRange operator*(const ExpressionRange &other) const
ExpressionRange operator/(const ExpressionRange &other) const
ExpressionRange operator||(const ExpressionRange &other) const
bool operator==(const ExpressionRange &other) const
std::string toString() const

Public Members

int64_t int_min_
double fp_min_
int64_t int_max_
double fp_max_

Public Static Functions

static ExpressionRange makeIntRange(const int64_t int_min, const int64_t int_max, const int64_t bucket, const bool has_nulls)
static ExpressionRange makeDoubleRange(const double fp_min, const double fp_max, const bool has_nulls)
static ExpressionRange makeFloatRange(const float fp_min, const float fp_max, const bool has_nulls)
static ExpressionRange makeNullRange()
static ExpressionRange makeInvalidRange()
bool typeSupportsRange(const SQLTypeInfo &ti)

Private Functions

ExpressionRange(const int64_t int_min_in, const int64_t int_max_in, const int64_t bucket, const bool has_nulls_in)
ExpressionRange(const ExpressionRangeType type, const double fp_min_in, const double fp_max_in, const bool has_nulls_in)
ExpressionRange()
ExpressionRange(const ExpressionRangeType type)
template<class T, class BinOp>
ExpressionRange binOp(const ExpressionRange &other, const BinOp &bin_op) const

Private Members

ExpressionRangeType type_
bool has_nulls_
union ExpressionRange::[anonymous] [anonymous]
union ExpressionRange::[anonymous] [anonymous]
int64_t bucket_