diff --git a/example/include/validated_type.h b/example/include/validated_type.h index 52b7e2d8..f37bec12 100644 --- a/example/include/validated_type.h +++ b/example/include/validated_type.h @@ -61,12 +61,17 @@ public: { } - constexpr explicit(false) operator T() const noexcept(std::is_nothrow_copy_constructible_v) + constexpr explicit(false) operator T() const & noexcept(std::is_nothrow_copy_constructible_v) requires std::copyable { return value_; } + constexpr explicit(false) operator T() && noexcept(std::is_nothrow_move_constructible_v) + { + return std::move(value_); + } + constexpr T& value() & noexcept = delete; constexpr const T& value() const& noexcept { return value_; } constexpr T&& value() && noexcept { return std::move(value_); }