Lumiera
0.pre.03
»edit your freedom«
|
#include "steam/engine/type-handler.hpp"
A pair of functors to maintain a datastructure within a buffer.
TypeHandler describes how to outfit the buffer in a specific way. Special convenience builder function(s) are provided to create a TypeHandler performing placement-new into a buffer given on invocation.
Definition at line 118 of file type-handler.hpp.
Public Types | |
typedef function< void(void *)> | DoInBuffer |
Public Member Functions | |
TypeHandler () | |
build an invalid NIL TypeHandler | |
template<typename CTOR , typename DTOR > | |
TypeHandler (CTOR ctor, DTOR dtor) | |
build a TypeHandler binding to arbitrary constructor and destructor functions. More... | |
bool | isValid () const |
Static Public Member Functions | |
template<class X > | |
static TypeHandler | create () |
builder function defining a TypeHandler to place a default-constructed object into the buffer. More... | |
template<class X , typename A1 > | |
static TypeHandler | create (A1 a1) |
Public Attributes | |
DoInBuffer | createAttached |
DoInBuffer | destroyAttached |
HashVal | identity |
Friends | |
HashVal | hash_value (TypeHandler const &handler) |
bool | operator!= (TypeHandler const &left, TypeHandler const &right) |
bool | operator== (TypeHandler const &left, TypeHandler const &right) |
|
inline |
build a TypeHandler binding to arbitrary constructor and destructor functions.
On invocation, these functions get a void* to the buffer.
Definition at line 141 of file type-handler.hpp.
|
inlinestatic |
builder function defining a TypeHandler to place a default-constructed object into the buffer.
Definition at line 152 of file type-handler.hpp.