19 template<
typename T = E>
24 template<
typename... Args>
29 template<
typename T,
typename... Args>
34 constexpr auto error() & -> E& {
return m_error.value(); }
35 constexpr auto error() const& -> E const& {
return m_error.value(); }
36 constexpr auto error() && -> E&& {
return util::move(m_error).value(); }
37 constexpr auto error() const&& -> E const&& {
return util::move(m_error).value(); }
Definition rebindable_box.h:42
Definition unexpected.h:14
constexpr Unexpected(Unexpected &&)=default
constexpr Unexpected(T &&error)
Definition unexpected.h:22
constexpr Unexpected(types::InPlace, Args &&... args)
Definition unexpected.h:26
constexpr auto error() const &-> E const &
Definition unexpected.h:35
constexpr Unexpected(types::InPlace, std::initializer_list< T > list, Args &&... args)
Definition unexpected.h:31
constexpr auto error() &&-> E &&
Definition unexpected.h:36
constexpr auto error() &-> E &
Definition unexpected.h:34
constexpr friend void tag_invoke(types::Tag< util::swap >, Unexpected &a, Unexpected &b)
Definition unexpected.h:40
constexpr Unexpected(Unexpected const &)=default
constexpr auto error() const &&-> E const &&
Definition unexpected.h:37
Definition operations.h:11
constexpr auto in_place
Definition in_place.h:8
di::meta::Decay< decltype(T)> Tag
Definition tag_invoke.h:28
constexpr struct di::util::SwapFunction swap
Unexpected(E &&) -> Unexpected< meta::UnwrapRefDecay< E > >