acme
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages Concepts
pointer< T > Class Template Reference

Public Types

using POINTER_TYPE_TAG = pointer_type_t
 
using TYPE = T
 
using RAW_POINTER = TYPE *
 

Public Member Functions

 pointer (nullptr_t)
 
 pointer (lparam &lparam)
 
template<typename ... Args>
 pointer (allocate_t, Args &&... args)
 
 pointer (const pointer &t)
 
 pointer (pointer &&t)
 
template<typename PARTICLE>
 pointer (enum_create_new, PARTICLE *pparticle)
 consumes a referer
 
template<typename PARTICLE>
 pointer (enum_create, PARTICLE *pparticle, ::factory::factory *pfactory=nullptr)
 consumes a referer
 
template<typename T2>
 pointer (transfer_t, T2 *p)
 referer is transferred?
 
template<typename T2>
 pointer (place_t, T2 *p)
 
template<class T2>
 pointer (const T2 *p)
 consumes a referer
 
template<class T2>
 pointer (const ::pointer< T2 > &p)
 consumes a referer
 
bool operator! () const
 
template<class T2>
 pointer (::pointer< T2 > &&t)
 
T * operator-> ()
 
T * operator-> () const
 
T & operator* ()
 
T & operator* () const
 
 operator T* ()
 
 operator T*const () const
 
T * get ()
 
const T * get () const
 
inline ::iptr iptr () const
 
bool is_null () const
 
bool is_set () const
 
template<class T2>
pointeroperator= (T2 *p)
 
pointeroperator= (const pointer &t)
 
pointeroperator= (pointer &&t)
 
template<class T2>
pointeroperator= (const ::pointer< T2 > &t)
 
template<class T2>
pointeroperator= (::pointer< T2 > &&t)
 
bool defer_destroy ()
 
long long release ()
 
inline ::pointer< T > detach ()
 
template<class T2>
inline ::pointer< T2 > cast ()
 
template<class T2>
inline ::pointer< T2 > cast () const
 
template<class T2>
non_const< T2 > * raw_cast ()
 
template<class T2>
const non_const< T2 > * raw_cast () const
 
template<class T2>
bool is () const
 
bool ok () const
 
bool nok () const
 
template<typename T2>
pointerreset (const ::pointer< T2 > &p)
 
template<typename T2>
pointerreset (T2 *ptr)
 
template<typename T2>
pointertransfer (T2 *ptr)
 
bool operator== (nullptr_t) const
 
template<typename TYPE>
pointer< T > & defer_assign_to (TYPE *&p)
 
template<typename OBJECT>
pointer< T > & defer_create_new (OBJECT *pparticle)
 
template<typename OBJECT>
pointer< T > & create_new (OBJECT *pparticle)
 
template<typename T2>
pointer< T > & clone (T2 *p)
 
void run_and_release ()
 
void operator() () const
 
template<typename T2>
pointer< T > & reset (T2 *p)
 
template<typename T2>
pointer< T > & transfer (T2 *p)
 
template<typename T2>
pointer< T > & defer_assign_to (T2 *&p)
 
template<typename T2>
pointer< T > & operator= (const pointer< T2 > &t)
 
template<typename T2>
pointer< T > & operator= (pointer< T2 > &&t)
 

Public Attributes

T * m_p
 
::subparticlem_psubparticle
 
::e_status m_estatus
 

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