![]() |
C++ SDK Documentation
24.2.0
|
This class represents the value ranges of the arguments of a UDSF, one range per argument. More...


Public Types | |
| enum | BoundType { LO_BOUND, UP_BOUND } |
Public Member Functions | |
| ValueRangeReader (size_t narg) | |
| bool | canHaveNulls (size_t idx) const |
| Indicates if there can be NULL values in the range. More... | |
| const vbool * | getBoolPtrLo (size_t idx) const |
| Get a pointer to a BOOLEAN value from a range bound. More... | |
| const vbool * | getBoolPtrUp (size_t idx) const |
| const vbool & | getBoolRefLo (size_t idx) const |
| Get a reference to a BOOLEAN value from a range bound. More... | |
| const vbool & | getBoolRefUp (size_t idx) const |
| template<class T , BoundType b> | |
| const T * | getColPtr (size_t idx) const |
| template<class T , BoundType b> | |
| T * | getColPtrForWrite (size_t idx) |
| const DateADT * | getDatePtrLo (size_t idx) const |
| Get a pointer to a DATE value from a range bound. More... | |
| const DateADT * | getDatePtrUp (size_t idx) const |
| const DateADT & | getDateRefLo (size_t idx) const |
| Get a reference to a DATE value from a range bound. More... | |
| const DateADT & | getDateRefUp (size_t idx) const |
| const vfloat * | getFloatPtrLo (size_t idx) const |
| Get a pointer to a FLOAT value from a range bound. More... | |
| const vfloat * | getFloatPtrUp (size_t idx) const |
| const vfloat & | getFloatRefLo (size_t idx) const |
| Get a reference to a FLOAT value from a range bound. More... | |
| const vfloat & | getFloatRefUp (size_t idx) const |
| const Interval * | getIntervalPtrLo (size_t idx) const |
| Get a pointer to an INTERVAL value from a range bound. More... | |
| const Interval * | getIntervalPtrUp (size_t idx) const |
| const Interval & | getIntervalRefLo (size_t idx) const |
| Get a reference to an INTERVAL value from a range bound. More... | |
| const Interval & | getIntervalRefUp (size_t idx) const |
| const IntervalYM * | getIntervalYMPtrLo (size_t idx) const |
| Get a pointer to a INTERVAL YEAR TO MONTH value from a range bound. More... | |
| const IntervalYM * | getIntervalYMPtrUp (size_t idx) const |
| const IntervalYM & | getIntervalYMRefLo (size_t idx) const |
| Get a reference to an INTERVAL YEAR TO MONTH value from a range bound. More... | |
| const IntervalYM & | getIntervalYMRefUp (size_t idx) const |
| const vint * | getIntPtrLo (size_t idx) const |
| Get a pointer to an INTEGER value from a range bound. More... | |
| const vint * | getIntPtrUp (size_t idx) const |
| const vint & | getIntRefLo (size_t idx) const |
| Get a reference to an INTEGER value from a range bound. More... | |
| const vint & | getIntRefUp (size_t idx) const |
| const VNumeric * | getNumericPtrLo (size_t idx) const |
| Get a pointer to a VNumeric value from a range bound. More... | |
| const VNumeric * | getNumericPtrUp (size_t idx) const |
| const VNumeric & | getNumericRefLo (size_t idx) const |
| Get a reference to a VNumeric value from a range bound. More... | |
| const VNumeric & | getNumericRefUp (size_t idx) const |
| size_t | getNumRanges () const |
| Retrieve the number of range arguments. More... | |
| const VerticaType & | getRangeType (size_t idx) const |
| Returns the data type of the values in a range. More... | |
| EE::ValueSort | getSortedness (size_t idx) const |
| const VString * | getStringPtrLo (size_t idx) const |
| Get a pointer to a VString value from a range bound. More... | |
| const VString * | getStringPtrUp (size_t idx) const |
| const VString & | getStringRefLo (size_t idx) const |
| Get a reference to an VString value from a range bound. More... | |
| const VString & | getStringRefUp (size_t idx) const |
| const TimeADT * | getTimePtrLo (size_t idx) const |
| Get a pointer to a TIME value from a range bound. More... | |
| const TimeADT * | getTimePtrUp (size_t idx) const |
| const TimeADT & | getTimeRefLo (size_t idx) const |
| Get a reference to a TIME value from a range bound. More... | |
| const TimeADT & | getTimeRefUp (size_t idx) const |
| const Timestamp * | getTimestampPtrLo (size_t idx) const |
| Get a pointer to a TIMESTAMP value from a range bound. More... | |
| const Timestamp * | getTimestampPtrUp (size_t idx) const |
| const Timestamp & | getTimestampRefLo (size_t idx) const |
| Get a reference to a TIMESTAMP value from a range bound. More... | |
| const Timestamp & | getTimestampRefUp (size_t idx) const |
| const TimestampTz * | getTimestampTzPtrLo (size_t idx) const |
| Get a pointer to a TIMESTAMP WITH TIMEZONE value from a range bound. More... | |
| const TimestampTz * | getTimestampTzPtrUp (size_t idx) const |
| const TimestampTz & | getTimestampTzRefLo (size_t idx) const |
| Get a reference to a TIMESTAMP WITH TIMEZONE value from a range bound. More... | |
| const TimestampTz & | getTimestampTzRefUp (size_t idx) const |
| const TimeTzADT * | getTimeTzPtrLo (size_t idx) const |
| Get a pointer to a TIME WITH TIMEZONE value from a range bound. More... | |
| const TimeTzADT * | getTimeTzPtrUp (size_t idx) const |
| const TimeTzADT & | getTimeTzRefLo (size_t idx) const |
| Get a reference to a TIME WITH TIMEZONE value from a range bound. More... | |
| const TimeTzADT & | getTimeTzRefUp (size_t idx) const |
| const VUuid * | getUuidPtrLo (size_t idx) const |
| Get a pointer to a VUuid value from a range bound. More... | |
| const VUuid * | getUuidPtrUp (size_t idx) const |
| const VUuid & | getUuidRefLo (size_t idx) const |
| Get a reference to a VUuid value from a range bound. More... | |
| const VUuid & | getUuidRefUp (size_t idx) const |
| bool | hasBounds (size_t idx) const |
| Check if this range has lower and upper bounds set. More... | |
| bool | isNull (int idx) const |
| Check if all values in the idx'th input range are NULL. More... | |
Protected Member Functions | |
| void | addArg (char *loBound, char *upBound, const VerticaType &dt, EE::ValueSort sortedness, bool canHaveNulls) |
| void | setCanHaveNulls (size_t idx, bool u) |
| Set a flag to indicate that some values in this range can be NULL. More... | |
| void | setSortedness (size_t idx, EE::ValueSort s) |
Protected Attributes | |
| size_t | narg |
| std::vector< ValueRange > | ranges |
| std::vector< VString > | svWrappersLo |
| std::vector< VString > | svWrappersUp |
| std::vector< VUuid > | uuWrappersLo |
| std::vector< VUuid > | uuWrappersUp |
| std::vector< VNumeric > | vnWrappersLo |
| std::vector< VNumeric > | vnWrappersUp |
Friends | |
| class | EE::VEval |
This class represents the value ranges of the arguments of a UDSF, one range per argument.
Instances of this class are used to let UDSF developers specify the output range of UDSFs via the optional ScalarFunction::getOutputRange() function.
|
inlineprotectedinherited |
Add a value range of a particular function argument
| loBound | Base location to find the lower bound data |
| upBound | Base location to find the upper bound data |
| sortedness | Sortedness of values in the range |
| dt | The data type of range bounds |
|
inlineinherited |
Indicates if there can be NULL values in the range.
| idx | the range argument number. |
Referenced by Vertica::VerticaValueRange::addArg().
|
inline |
Get a pointer to a BOOLEAN value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getBoolRefLo().
|
inline |
Get a reference to a BOOLEAN value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a DATE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getDateRefLo().
|
inline |
Get a reference to a DATE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a FLOAT value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getFloatRefLo().
|
inline |
Get a reference to a FLOAT value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to an INTERVAL value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getIntervalRefLo().
|
inline |
Get a reference to an INTERVAL value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a INTERVAL YEAR TO MONTH value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getIntervalYMRefLo().
|
inline |
Get a reference to an INTERVAL YEAR TO MONTH value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to an INTEGER value from a range bound.
| idx | The argument number to retrieve the range bound. |
Example:
Referenced by getIntRefLo().
|
inline |
|
inline |
Get a pointer to a VNumeric value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getNumericRefLo().
|
inline |
|
inlineinherited |
Retrieve the number of range arguments.
|
inlineinherited |
Returns the data type of the values in a range.
| idx | The index of the range |
|
inline |
Get a pointer to a VString value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getStringRefLo().
|
inline |
Get a reference to an VString value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a TIME value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getTimeRefLo().
|
inline |
Get a reference to a TIME value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a TIMESTAMP value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getTimestampRefLo().
|
inline |
Get a reference to a TIMESTAMP value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a TIMESTAMP WITH TIMEZONE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getTimestampTzRefLo().
|
inline |
Get a reference to a TIMESTAMP WITH TIMEZONE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a TIME WITH TIMEZONE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getTimeTzRefLo().
|
inline |
Get a reference to a TIME WITH TIMEZONE value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by isNull().
|
inline |
Get a pointer to a VUuid value from a range bound.
| idx | The argument number to retrieve the range bound. |
Referenced by getUuidRefLo().
|
inline |
|
inline |
Check if this range has lower and upper bounds set.
Example:
|
inline |
Check if all values in the idx'th input range are NULL.
| idx | The argument range number. |
|
inlineprotectedinherited |
Set a flag to indicate that some values in this range can be NULL.
| idx | The argument range number. |
| u | true if there can be NULL values in the range, else false. |