AND(!convertible_to< U, T >)) const expr explicit semiregular_box(U &&u) noexcept(std::is_nothrow_constructible< T, U >::value) (defined in ranges::semiregular_box< T && >)
operator=(semiregular_box &&that) noexcept(std::is_nothrow_move_constructible< T >::value &&(!std::is_move_assignable< T >::value||std::is_nothrow_move_assignable< T >::value)) (defined in ranges::semiregular_box< T && >)