If this object does not contain a value, invoke the specified func and return the result of that invocation. Otherwise return a copy‐constructed value from this object. Note that func must return bsl::optional. Also note that the optional object returned by func is returned as‐is, without copying or moving.
Synopsis
Declared in <bslstl_optional.h>
template<class t_FUNC>
constexpr
optional<t_TYPE>
or_else(t_FUNC&& func) const &
requires conjunction_v<std::is_invocable<t_FUNC>,
std::is_copy_constructible<t_TYPE>>;
Created with MrDocs