Developer documentation

mmx::shared_object< R > Class Template Reference

#include <shared_object.hpp>

Classes

struct  rep
 

Public Types

typedef R element_type
 
typedef R object_type
 
typedef R * iterator
 
typedef const R * const_iterator
 

Public Member Functions

void leave ()
 
void divorce ()
 
template<class P0 >
 shared_object (P0 a)
 
template<class P0 , class P1 >
 shared_object (P0 a, P1 b)
 
template<class P0 , class P1 , class P2 >
 shared_object (P0 a, P1 b, P2 c)
 
template<class P0 , class P1 , class P2 , class P3 >
 shared_object (P0 a, P1 b, P2 c, P3 d)
 
 shared_object ()
 
 shared_object (const R &obj_arg)
 
 shared_object (const shared_object &s)
 
 shared_object (rep *s)
 
 ~shared_object ()
 
shared_objectoperator= (const shared_object &s)
 
iterator operator-> ()
 
R & operator* ()
 
const_iterator operator-> () const
 
const R & operator* () const
 
int ref () const
 
int ref ()
 

Public Attributes

repbody
 

Member Typedef Documentation

template<class R>
typedef const R* mmx::shared_object< R >::const_iterator
template<class R>
typedef R mmx::shared_object< R >::element_type
template<class R>
typedef R* mmx::shared_object< R >::iterator
template<class R>
typedef R mmx::shared_object< R >::object_type

Constructor & Destructor Documentation

template<class R>
template<class P0 >
mmx::shared_object< R >::shared_object ( P0  a)
inline
template<class R>
template<class P0 , class P1 >
mmx::shared_object< R >::shared_object ( P0  a,
P1  b 
)
inline
template<class R>
template<class P0 , class P1 , class P2 >
mmx::shared_object< R >::shared_object ( P0  a,
P1  b,
P2  c 
)
inline
template<class R>
template<class P0 , class P1 , class P2 , class P3 >
mmx::shared_object< R >::shared_object ( P0  a,
P1  b,
P2  c,
P3  d 
)
inline
template<class R>
mmx::shared_object< R >::shared_object ( )
inline
template<class R>
mmx::shared_object< R >::shared_object ( const R &  obj_arg)
inline
template<class R>
mmx::shared_object< R >::shared_object ( const shared_object< R > &  s)
inline
template<class R>
mmx::shared_object< R >::shared_object ( rep s)
inline
template<class R>
mmx::shared_object< R >::~shared_object ( )
inline

Member Function Documentation

template<class R>
void mmx::shared_object< R >::divorce ( )
inline
template<class R>
void mmx::shared_object< R >::leave ( )
inline
template<class R>
R& mmx::shared_object< R >::operator* ( )
inline
template<class R>
const R& mmx::shared_object< R >::operator* ( ) const
inline
template<class R>
iterator mmx::shared_object< R >::operator-> ( )
inline
template<class R>
const_iterator mmx::shared_object< R >::operator-> ( ) const
inline
template<class R>
shared_object& mmx::shared_object< R >::operator= ( const shared_object< R > &  s)
inline
template<class R>
int mmx::shared_object< R >::ref ( ) const
inline
template<class R>
int mmx::shared_object< R >::ref ( )
inline

Member Data Documentation

template<class R>
rep* mmx::shared_object< R >::body

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