5 #ifndef BITCOIN_UTIL_RESULT_H 6 #define BITCOIN_UTIL_RESULT_H 40 template <
typename FT>
68 return has_value() ? std::move(
value()) : std::forward<U>(default_value);
70 explicit operator bool() const noexcept {
return has_value(); }
84 #endif // BITCOIN_UTIL_RESULT_H
const T * operator->() const LIFETIMEBOUND
T & value() LIFETIMEBOUND
std::variant< bilingual_str, T > m_variant
bool has_value() const noexcept
std::optional methods, so functions returning optional<T> can change to return Result<T> with minimal...
friend bilingual_str ErrorString(const Result< FT > &result)
T * operator->() LIFETIMEBOUND
T value_or(U &&default_value) &&
T & operator*() LIFETIMEBOUND
const T & value() const LIFETIMEBOUND
bilingual_str ErrorString(const Result< T > &result)
const T & operator*() const LIFETIMEBOUND
T value_or(U &&default_value) const &
bool error(const char *fmt, const Args &... args)
#define T(expected, seed, data)