|
@@ -146,21 +146,21 @@ public:
|
|
|
constexpr T & operator*() & noexcept { return *std::get_if<0>(&value_); }
|
|
constexpr T & operator*() & noexcept { return *std::get_if<0>(&value_); }
|
|
|
constexpr T && operator*() && noexcept { return std::move(*std::get_if<0>(&value_)); }
|
|
constexpr T && operator*() && noexcept { return std::move(*std::get_if<0>(&value_)); }
|
|
|
|
|
|
|
|
- constexpr const T & value() const & noexcept {
|
|
|
|
|
|
|
+ constexpr const T & value() const & {
|
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
|
return operator*();
|
|
return operator*();
|
|
|
}
|
|
}
|
|
|
throw bad_expected_access(error());
|
|
throw bad_expected_access(error());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- constexpr T & value() & noexcept {
|
|
|
|
|
|
|
+ constexpr T & value() & {
|
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
|
return operator*();
|
|
return operator*();
|
|
|
}
|
|
}
|
|
|
throw bad_expected_access(std::as_const(error()));
|
|
throw bad_expected_access(std::as_const(error()));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- constexpr T && value() && noexcept {
|
|
|
|
|
|
|
+ constexpr T && value() && {
|
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
if (JVALIDATE_LIKELY(has_value())) {
|
|
|
return std::move(*this).operator*();
|
|
return std::move(*this).operator*();
|
|
|
}
|
|
}
|