Range-v3 Range algorithms, views, and actions for the Standard Library |

Public Member Functions | List of all members
ranges::v3::unique_resource< R, D > Class Template Reference

## Public Member Functions
R const & | get () const noexcept
D & | get_deleter () noexcept
D const & | get_deleter () const noexcept
| operator R const & () const noexcept
template<typename RR = R>
auto | operator* () const noexcept-> decltype(*std::declval< RR const & >())
R | operator-> () const noexcept(std::is_nothrow_copy_constructible< R >::value)
unique_resource & | operator= (unique_resource &&that) noexcept(_is_nothrow_delete::value && std::is_nothrow_move_assignable< R >::value && std::is_nothrow_move_assignable< D >::value)
unique_resource & | operator= (unique_resource const &)=delete
void | release () noexcept
void | reset () noexcept(_is_nothrow_delete::value)
void | reset (R const &r) noexcept(_is_nothrow_delete::value &&std::is_nothrow_copy_assignable< R >::value)
void | reset (R &r) noexcept(_is_nothrow_delete::value &&std::is_nothrow_copy_assignable< R >::value)
void | reset (R &&r) noexcept(_is_nothrow_delete::value &&std::is_nothrow_move_assignable< R >::value)
void | swap (unique_resource &that) noexcept(_is_nothrow_swappable::value)
template<typename RR , typename DD , typename RRef = detail::_coerce_to_ref_of_t<RR, R>, typename DRef = detail::_coerce_to_ref_of_t<DD, D>, typename = meta::if_<detail::_is_constructible<R, RRef>>, typename = meta::if_<detail::_is_constructible<D, DRef>>>
| unique_resource (RR &&r, DD &&d) noexcept(std::is_nothrow_constructible< R, RRef >::value && std::is_nothrow_constructible< D, DRef >::value)
| unique_resource (unique_resource &&that) noexcept(std::is_nothrow_move_constructible< R >::value && std::is_nothrow_move_constructible< D >::value)
| unique_resource (unique_resource const &)=delete