|  | 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().