Classdesc  3.D29
polyref< T, TT > Class Template Reference

#include <poly.h>

Inheritance diagram for polyref< T, TT >:
Inheritance graph
Collaboration diagram for polyref< T, TT >:
Collaboration graph

Public Member Functions

T * operator-> ()
 
T & operator* ()
 
const T * operator-> () const
 
const T & operator* () const
 
bool operator== (const polyref &x)
 
template<class U >
bool operator!= (const U &x) const
 
 operator bool () const
 
template<class U >
polyref addObject ()
 add object of type U
 
template<class U , class A >
polyref addObject (A x)
 
template<class U , class A1 , class A2 >
polyref addObject (A1 x1, A2 x2)
 
template<class U >
U & cast ()
 cast target to type U. Throws if not possible
 
template<class U >
const U & cast () const
 
- Public Member Functions inherited from ref< classdesc::poly< T, TT > >
bool operator== (const ref &x) const
 
bool operator== (const classdesc::poly< T, TT > *x) const
 
bool operator== (const classdesc::poly< T, TT > &x) const
 
 ref (const ref &x)
 
 ref (const classdesc::poly< T, TT > &x)
 
refoperator= (const ref &x)
 
refoperator= (const classdesc::poly< T, TT > &x)
 
classdesc::poly< T, TT > * operator-> ()
 dereference - creates default object if null
 
const classdesc::poly< T, TT > * operator-> () const
 dereference - throws in debug mode if null
 
functional::bound_method
< classdesc::poly< T, TT >, M > 
operator->* (M &m)
 
functional::bound_method
< classdesc::poly< T, TT >, M > 
operator->* (M &m) const
 
classdesc::poly< T, TT > & operator* ()
 dereference - creates default object if null
 
const classdesc::poly< T, TT > & operator* () const
 dereference - throws in debug mode if null
 
void nullify ()
 make reference null
 
bool nullref () const
 true if reference is null
 
 operator bool () const
 equivalent to nullref
 
int refCount () const
 return the payloads reference count
 
bool operator!= (const U &x) const
 
bool operator< (const ref &x) const
 
void swap (ref &x)
 

Detailed Description

template<class T = Eobject, class TT = SimpleTypeTable<T>>
class classdesc::polyref< T, TT >

reference counted polymorphic smart pointer class - copies are shallow


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