| 362 | template <typename U, typename E = typename std::enable_if< |
| 363 | std::is_constructible<U, T>::value>::type> |
| 364 | Status Value(U* out) && { |
| 365 | if (!ok()) { |
| 366 | return std::move(*this).status(); |
| 367 | } |
| 368 | *out = U(MoveValueUnsafe()); |
| 369 | return Status::OK(); |
| 370 | } |
| 371 | |
| 372 | /// Move and return the internally stored value or alternative if an error is stored. |
| 373 | T ValueOr(T alternative) && { |