UDX return value macros
There are macros that you can use to ensure that return values from the
evaluate() and finalResult() methods are valid values. These
macros are defined in the /nz/kit/sys/include/udxbase.h header
file.
int returnType()
IntervalReturn* intervalReturnInfo()
TimeTzReturn* timetzReturnInfo()
StringReturn* stringReturnInfo()
Numeric128Val* numeric128ReturnInfo()
Numeric64Val* numeric64ReturnInfo()
Numeric32Val* numeric32ReturnInfo()
void setReturnNull(bool val)
NZ_UDX_RETURN_NULL()
NZ_UDX_RETURN_STRING(x)
NZ_UDX_RETURN_BOOL(x)
NZ_UDX_RETURN_DATE(x)
NZ_UDX_RETURN_TIME(x)
NZ_UDX_RETURN_TIMETZ(x)
NZ_UDX_RETURN_NUMERIC32(x)
NZ_UDX_RETURN_NUMERIC64(x)
NZ_UDX_RETURN_NUMERIC128(x)
NZ_UDX_RETURN_FLOAT(x)
NZ_UDX_RETURN_DOUBLE(x)
NZ_UDX_RETURN_INTERVAL(x)
NZ_UDX_RETURN_INT64(x)
NZ_UDX_RETURN_INT32(x)
NZ_UDX_RETURN_INT16(x)
NZ_UDX_RETURN_INT8(x)
NZ_UDX_RETURN_TIMESTAMP(x)
NZ_UDX_RETURN_JSON(x)
NZ_UDX_RETURN_JSONB(x)
NZ_UDX_RETURN_JSONPATH(x)