![]() |
C++ SDK Documentation
24.2.0
|
This class represents the output value range of a UDSF. More...


Public Types | |
| enum | BoundType { LO_BOUND, UP_BOUND } |
Public Member Functions | |
| ValueRangeWriter (char *outLoBound, char *outUpBound, const VerticaType &dt, EE::ValueSort sortedness, bool canHaveNulls) | |
| bool | canHaveNulls (size_t idx) const |
| Indicates if there can be NULL values in the range. More... | |
| bool | canHaveNulls () const |
| template<class T , BoundType b> | |
| const T * | getColPtr (size_t idx) const |
| template<class T , BoundType b> | |
| T * | getColPtrForWrite (size_t idx) |
| VNumeric & | getNumericRefLo () |
| Gets a VNumeric object reference to set the range lower bound. More... | |
| VNumeric & | getNumericRefUp () |
| Gets a VNumeric object reference to set the range upper bound. More... | |
| 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 |
| EE::ValueSort | getSortedness () const |
| VString & | getStringRefLo () |
| Gets a VString object reference to set the range lower bound. More... | |
| VString & | getStringRefUp () |
| Gets a VString object reference to set the range upper bound. More... | |
| VUuid & | getUuidRefLo () |
| Gets a VUuid object reference to set the range lower bound. More... | |
| VUuid & | getUuidRefUp () |
| Gets a VUuid object reference to set the range upper bound. More... | |
| bool | hasBounds () const |
| void | setBoolLo (vbool r) |
| Sets a range bound as a BOOLEAN value. More... | |
| void | setBoolUp (vbool r) |
| void | setCanHaveNulls (bool u) |
| void | setDateLo (DateADT r) |
| Sets a range bound as a DATE value. More... | |
| void | setDateUp (DateADT r) |
| void | setFloatLo (vfloat r) |
| Sets a range bound as a FLOAT value to the output row. More... | |
| void | setFloatUp (vfloat r) |
| void | setHasBounds () |
| Lets Vertica know that this output range has user-defined bounds. | |
| void | setIntervalLo (Interval r) |
| Sets a range bound as an INTERVAL value. More... | |
| void | setIntervalUp (Interval r) |
| void | setIntervalYMLo (IntervalYM r) |
| Sets a range bound as an INTERVAL YEAR TO MONTH value. More... | |
| void | setIntervalYMUp (IntervalYM r) |
| void | setIntLo (vint r) |
| Sets a range bound as an INTEGER value. More... | |
| void | setIntUp (vint r) |
| void | setNull () |
| Sets to NULL all values in this range. More... | |
| void | setSortedness (EE::ValueSort s) |
| void | setTimeLo (TimeADT r) |
| Sets a range bound as a TIMESTAMP value. More... | |
| void | setTimestampLo (Timestamp r) |
| Sets a range bound as a TIMESTAMP value. More... | |
| void | setTimestampTzLo (TimestampTz r) |
| Sets a range bound as a TIMESTAMP WITH TIMEZONE value. More... | |
| void | setTimestampTzUp (TimestampTz r) |
| void | setTimestampUp (Timestamp r) |
| void | setTimeTzLo (TimeTzADT r) |
| Sets a range bound as a TIMESTAMP WITH TIMEZONE value. More... | |
| void | setTimeTzUp (TimeTzADT r) |
| void | setTimeUp (TimeADT r) |
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 output value range of a UDSF.
Instances of this class are used to allow 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 |
|
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 |
|
inline |
|
inline |
|
inline |
|
inline |
Sets a range bound as a BOOLEAN value.
| r | The BOOLEAN value to set the range bound. |
Referenced by setNull().
|
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. |
|
inline |
Sets a range bound as a DATE value.
| r | The DATE value to set the range bound. |
Referenced by setNull().
|
inline |
Sets a range bound as a FLOAT value to the output row.
| r | The FLOAT value to set the range bound. |
Referenced by setNull().
|
inline |
Sets a range bound as an INTERVAL value.
| r | The INTERVAL value to set the range bound. |
Referenced by setNull().
|
inline |
Sets a range bound as an INTERVAL YEAR TO MONTH value.
| r | The INTERVAL YEAR TO MONTH value to set the range bound. |
|
inline |
Sets a range bound as an INTEGER value.
| r | The INTEGER value to set the range bound. |
Referenced by setNull().
|
inline |
Sets to NULL all values in this range.
|
inline |
Sets a range bound as a TIMESTAMP value.
| r | The TIMESTAMP value to set the range bound. |
Referenced by setNull().
|
inline |
Sets a range bound as a TIMESTAMP value.
| r | The TIMESTAMP value to set the range bound. |
Referenced by setNull().
|
inline |
Sets a range bound as a TIMESTAMP WITH TIMEZONE value.
| r | The TIMESTAMP WITH TIMEZONE value to set the range bound. |
Referenced by setNull().