[#BloombergLP-bdlat_NullableValueFunctions] = xref:BloombergLP.adoc[BloombergLP]::bdlat_NullableValueFunctions :relfileprefix: ../ :mrdocs: This `namespace` provides functions that expose "nullable" behavior for "nullable value" types. See the component‐level documentation for more information. == Types [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlat_NullableValueFunctions/IsNullableValue-030.adoc[`IsNullableValue`] | This `struct` should be specialized for third‐party types that need to expose "nullable" behavior. See the component‐level documentation for further information. | xref:BloombergLP/bdlat_NullableValueFunctions/ValueType-08.adoc[`ValueType`] | This meta‐function should contain a typedef `Type` that specifies the type of value stored in a nullable type of the parameterized `TYPE`. |=== == Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlat_NullableValueFunctions/accessValue.adoc[`accessValue`] | Invoke the specified `accessor` on the non‐modifiable value stored in the specified "nullable" `object`. The supplied `accessor` must be a callable type that can be called as if it had the following signature: ` int accessor(const VALUE_TYPE& value); ` Return the value from the invocation of `accessor`. The behavior is undefined unless `object` does not contain a null value. | xref:BloombergLP/bdlat_NullableValueFunctions/bdlat_nullableValueAccessValue-0c1.adoc[`bdlat_nullableValueAccessValue`] | `bdlat_nullableValueAccessValue` overloads | xref:BloombergLP/bdlat_NullableValueFunctions/bdlat_nullableValueIsNull-03.adoc[`bdlat_nullableValueIsNull`] | `bdlat_nullableValueIsNull` overloads | xref:BloombergLP/bdlat_NullableValueFunctions/bdlat_nullableValueMakeValue-0c.adoc[`bdlat_nullableValueMakeValue`] | `bdlat_nullableValueMakeValue` overloads | xref:BloombergLP/bdlat_NullableValueFunctions/bdlat_nullableValueManipulateValue-0d.adoc[`bdlat_nullableValueManipulateValue`] | `bdlat_nullableValueManipulateValue` overloads | xref:BloombergLP/bdlat_NullableValueFunctions/isNull.adoc[`isNull`] | Return `true` if the specified "nullable" `object` contains a null value, and `false` otherwise. | xref:BloombergLP/bdlat_NullableValueFunctions/makeValue.adoc[`makeValue`] | Assign to the specified "nullable" `object` the default value for the contained type. | xref:BloombergLP/bdlat_NullableValueFunctions/manipulateValue.adoc[`manipulateValue`] | Invoke the specified `manipulator` on the address of the value stored in the specified "nullable" `object`. The supplied `manipulator` must be a callable type that can be called as if it had the following signature: ` int manipulator(VALUE_TYPE *value); ` Return the value from the invocation of `manipulator`. The behavior is undefined unless `object` does not contain a null value. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#