scnlib  0.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
scn::detail::unique_ptr< T > Class Template Reference

#include <util.h>

Public Types

using element_type = T
 
using pointer = T *
 

Public Member Functions

constexpr unique_ptr () noexcept=default
 
constexpr unique_ptr (std::nullptr_t) noexcept
 
constexpr unique_ptr (pointer p) noexcept
 
template<typename U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
SCN_CONSTEXPR14 unique_ptr (unique_ptr< U > &&u) noexcept
 
 unique_ptr (const unique_ptr &)=delete
 
unique_ptroperator= (const unique_ptr &)=delete
 
SCN_CONSTEXPR14 unique_ptr (unique_ptr &&p) noexcept
 
unique_ptroperator= (unique_ptr &&p) noexcept
 
 ~unique_ptr () noexcept
 
constexpr operator bool () const noexcept
 
constexpr pointer get () const noexcept
 
constexpr pointer operator-> () const noexcept
 
constexpr
std::add_lvalue_reference< T >
::type 
operator* () const
 
SCN_CONSTEXPR14 void reset ()
 

Detailed Description

template<typename T>
class scn::detail::unique_ptr< T >

Definition at line 552 of file util.h.

Member Typedef Documentation

template<typename T>
using scn::detail::unique_ptr< T >::element_type = T

Definition at line 554 of file util.h.

template<typename T>
using scn::detail::unique_ptr< T >::pointer = T*

Definition at line 555 of file util.h.

Constructor & Destructor Documentation

template<typename T>
constexpr scn::detail::unique_ptr< T >::unique_ptr ( )
defaultnoexcept
template<typename T>
constexpr scn::detail::unique_ptr< T >::unique_ptr ( std::nullptr_t  )
inlinenoexcept

Definition at line 558 of file util.h.

template<typename T>
constexpr scn::detail::unique_ptr< T >::unique_ptr ( pointer  p)
inlineexplicitnoexcept

Definition at line 560 of file util.h.

template<typename T>
template<typename U , typename std::enable_if< std::is_convertible< U *, pointer >::value >::type * = nullptr>
SCN_CONSTEXPR14 scn::detail::unique_ptr< T >::unique_ptr ( unique_ptr< U > &&  u)
inlinenoexcept

Definition at line 566 of file util.h.

template<typename T>
scn::detail::unique_ptr< T >::unique_ptr ( const unique_ptr< T > &  )
delete
template<typename T>
SCN_CONSTEXPR14 scn::detail::unique_ptr< T >::unique_ptr ( unique_ptr< T > &&  p)
inlinenoexcept

Definition at line 575 of file util.h.

template<typename T>
scn::detail::unique_ptr< T >::~unique_ptr ( )
inlinenoexcept

Definition at line 590 of file util.h.

Member Function Documentation

template<typename T>
constexpr pointer scn::detail::unique_ptr< T >::get ( ) const
inlinenoexcept

Definition at line 602 of file util.h.

template<typename T>
constexpr scn::detail::unique_ptr< T >::operator bool ( ) const
inlineexplicitnoexcept

Definition at line 597 of file util.h.

template<typename T>
constexpr std::add_lvalue_reference<T>::type scn::detail::unique_ptr< T >::operator* ( ) const
inline

Definition at line 611 of file util.h.

template<typename T>
constexpr pointer scn::detail::unique_ptr< T >::operator-> ( ) const
inlinenoexcept

Definition at line 607 of file util.h.

template<typename T>
unique_ptr& scn::detail::unique_ptr< T >::operator= ( const unique_ptr< T > &  )
delete
template<typename T>
unique_ptr& scn::detail::unique_ptr< T >::operator= ( unique_ptr< T > &&  p)
inlinenoexcept

Definition at line 580 of file util.h.

template<typename T>
SCN_CONSTEXPR14 void scn::detail::unique_ptr< T >::reset ( )
inline

Definition at line 617 of file util.h.


The documentation for this class was generated from the following file: