#include <bdlat_nullablevalueutil.h>
|
template<class TYPE , class ACCESSOR > |
static int | accessValueByCategory (const TYPE &object, ACCESSOR &accessor) |
|
template<class TYPE , class MANIPULATOR > |
static int | manipulateValueByCategory (TYPE *object, MANIPULATOR &manipulator) |
|
This struct
provides a namespace for a suite of function templates providing non-primitive operations on "nullable value" types.
◆ accessValueByCategory()
template<class TYPE , class ACCESSOR >
int bdlat::NullableValueUtil::accessValueByCategory |
( |
const TYPE & |
object, |
|
|
ACCESSOR & |
accessor |
|
) |
| |
|
inlinestatic |
Invoke the specified accessor
on the non-modifiable value stored in the specified "nullable" object
and on a prvalue of the category tag type for the dynamic category of the value. See {bdlat_typecategory |Category Tags and Enumerators} for documentation about category tags. Return the value from the invocation of accessor
. The accessor
must be an accessor functor. See {bdlat_typecategory |ACCESSOR
Functors} for the requirements on accessor
. The behavior is undefined if object
contains a null value.
◆ manipulateValueByCategory()
template<class TYPE , class MANIPULATOR >
int bdlat::NullableValueUtil::manipulateValueByCategory |
( |
TYPE * |
object, |
|
|
MANIPULATOR & |
manipulator |
|
) |
| |
|
inlinestatic |
Invoke the specified manipulator
on the address of the value stored in the specified "nullable" object
and on a prvalue of the category tag type for the dynamic category of the value. See {bdlat_typecategory |Category Tags and Enumerators} for documentation about category tags. Return the value from the invocation of manipulator
. The manipulator
must be a manipulator functor. See {bdlat_typecategory |MANIPULATOR
Functors} for the requirements on manipulator
. The behavior is undefined if object
contains a null value.
The documentation for this struct was generated from the following file: