Potato Engine
Hobby Game Engine Project
Public Types | Public Member Functions | Friends | List of all members
up::com_ptr< T > Class Template Reference

Public Types

using pointer = T *
 
using reference = T &
 

Public Member Functions

 com_ptr (T *ptr)
 
 com_ptr (std::nullptr_t)
 
 com_ptr (com_ptr const &rhs)
 
 com_ptr (com_ptr &&rhs)
 
template<typename To >
com_ptr< To > as () const noexcept
 
com_ptroperator= (com_ptr const &rhs)
 
com_ptroperator= (com_ptr &&rhs)
 
com_ptroperator= (std::nullptr_t)
 
 operator bool () const
 
bool empty () const
 
void reset (pointer ptr=pointer{})
 
pointer release ()
 
pointer get () const
 
pointer operator-> () const
 
reference operator* () const
 

Friends

bool operator== (com_ptr const &lhs, com_ptr const &rhs)
 
bool operator!= (com_ptr const &lhs, com_ptr const &rhs)
 
bool operator== (com_ptr const &lhs, std::nullptr_t)
 
bool operator!= (com_ptr const &lhs, std::nullptr_t)
 
bool operator== (std::nullptr_t, com_ptr const &rhs)
 
bool operator!= (std::nullptr_t, com_ptr const &rhs)
 

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