ecolab::ref< T > Class Template Reference

#include <TCL_obj_base.h>

Inheritance diagram for ecolab::ref< T >:
Inheritance graph
Collaboration diagram for ecolab::ref< T >:
Collaboration graph

Public Member Functions

T & operator* ()
 
const T & operator* () const
 
T * operator-> ()
 
const T * operator-> () const
 
 ref (const ref &x)
 
template<class U >
 ref (const U &x)
 
refoperator= (const ref &x)
 
template<class U >
refoperator= (const U &x)
 
void swap (ref &x)
 
template<class U >
bool operator== (const U &x)
 
template<class U >
bool operator!= (const U &x)
 
- Public Member Functions inherited from ecolab::classdesc::ref< T >
 ref (const ref &x)
 
 ref (const T &x)
 
refoperator= (const ref &x)
 
refoperator= (const T &x)
 
T * operator-> ()
 dereference - creates default object if null
 
template<class M >
functional::bound_method< T, M > operator-> * (M &m)
 
template<class M >
functional::bound_method< T, M > operator-> * (M &m) const
 
T & operator* ()
 dereference - creates default object if null
 
const T * operator-> () const
 dereference - throws in debug mode if null
 
const T & 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 ref &x) const
 
bool operator== (const T *x) const
 
bool operator== (const T &x) const
 
template<class U >
bool operator!= (const U &x) const
 
bool operator< (const ref &x) const
 
void swap (ref &x)
 

Public Attributes

classdesc::string name
 

Detailed Description

template<class T>
class ecolab::ref< T >

An EcoLab ref is a classdesc::ref, but also tracks change of pointee to enable TCL commands to track the changes


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