BloombergLP::bslstl::Optional_Base::value_or

Return the contained value, or a converted fallback if disengaged.

Synopsis

Declared in <bslstl_optional.h>

template<class t_ANY_TYPE>
t_TYPE
value_or(
    std::allocator_arg_t allocatorArg,
    allocator_type allocator,
    t_ANY_TYPE&& value) &&;

Description

If this object is non-null, return a copy of the underlying object of a (template parameter) t_TYPE created using the provided allocator, and the specified value converted to t_TYPE using the specified allocator otherwise. Note that this method returns by value, so may be inefficient in some contexts.

Return Value

contained value if engaged, otherwise value converted to t_TYPE

Parameters

NameDescription
allocatorArgtag selecting the allocator-extended constructor
allocatorallocator used to supply memory
valuevalue compared with or used to initialize the optional