Developer documentation

shared_object.hpp File Reference
#include <cassert>
#include <memory>

Go to the source code of this file.

Classes

struct  mmx::AsSize
 
class  mmx::shared_object< R >
 
struct  mmx::shared_object< R >::rep
 
struct  mmx::rep_view< R >
 
struct  mmx::ReferTo< T >
 The structure for obtain the template parameter. More...
 
struct  mmx::ReferTo< shared_object< T > >
 The structure for obtain the template parameter. More...
 

Namespaces

 mmx
 

Macros

#define define_operator_rrr(parm0, parm1, parm2, opname, function)
 
#define define_operator_rr_(parm0, parm1, parm2, opname, function)
 
#define define_operator_r_r(parm0, parm1, parm2, opname, function)
 
#define define_operator__r_(parm0, parm1, parm2, opname, function)
 
#define define_function_from_inplace(parm0, parm1, parm2, function)
 
#define assert(expr, msg)   if (!(expr)) assert (msg);
 
#define NOREFCOUNT
 

Functions

template<class R >
R & mmx::rep (R &r)
 
template<class R >
const R & mmx::rep (const R &r)
 
template<class R >
R & mmx::rep (shared_object< R > &r)
 
template<class R >
const R & mmx::rep (const shared_object< R > &r)
 

Macro Definition Documentation

#define assert (   expr,
  msg 
)    if (!(expr)) assert (msg);
#define define_function_from_inplace (   parm0,
  parm1,
  parm2,
  function 
)
Value:
inline \
void function(parm0& r, const parm1& x, const parm2& y) { \
r=x;function(r,y); \
}
#define define_operator__r_ (   parm0,
  parm1,
  parm2,
  opname,
  function 
)
Value:
inline \
parm0 opname(const parm1& x, const parm2& y) { \
parm0 r; function(r,x.rep(),y); return r; \
}
#define define_operator_r_r (   parm0,
  parm1,
  parm2,
  opname,
  function 
)
Value:
inline \
parm0 opname(const parm1& x, const parm2& y) { \
parm0 r; function(r.rep(),x,y.rep()); return r; \
}
#define define_operator_rr_ (   parm0,
  parm1,
  parm2,
  opname,
  function 
)
Value:
inline \
parm0 opname(const parm1& x, const parm2& y) { \
parm0 r; function(r.rep(),x.rep(),y); return r; \
}
#define define_operator_rrr (   parm0,
  parm1,
  parm2,
  opname,
  function 
)
Value:
inline parm0 \
opname(const parm1& x, const parm2& y) { \
parm0 r; function(r.rep(),x.rep(),y.rep()); return r; \
}
#define NOREFCOUNT
Home