s11n::deserializable_f< DeserializableT, BinaryFunctorT > Struct Template Reference

Experimental. More...

#include <functional.hpp>

Inheritance diagram for s11n::deserializable_f< DeserializableT, BinaryFunctorT >:

Inheritance graph
[legend]
Collaboration diagram for s11n::deserializable_f< DeserializableT, BinaryFunctorT >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef DeserializableT type

Public Member Functions

 deserializable_f (type &_ref)
 Sets this->ref = _ref.
 deserializable_f (type &_ref, BinaryFunctorT f)
template<typename NodeType>
bool operator() (const NodeType &src) const
 Returns deserialize( src, this->ref ).
typeoperator() () const
 Retyurns a reference to this object's referenced Serializable.

Public Attributes

reference_f< typereference
BinaryFunctorT functor


Detailed Description

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
struct s11n::deserializable_f< DeserializableT, BinaryFunctorT >

Experimental.

Added in 1.1.3.

A Serializable functor intended for some metaprogramming experimentation, to allow lazy de-s11n of a Serializable.

BinaryFunctorT requires this signature:

bool operator()( const NodeType & src, SerializableT & dest )

Definition at line 716 of file functional.hpp.


Member Typedef Documentation

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
typedef DeserializableT s11n::deserializable_f< DeserializableT, BinaryFunctorT >::type

Definition at line 719 of file functional.hpp.


Constructor & Destructor Documentation

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
s11n::deserializable_f< DeserializableT, BinaryFunctorT >::deserializable_f ( type _ref  )  [inline, explicit]

Sets this->ref = _ref.

Definition at line 726 of file functional.hpp.

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
s11n::deserializable_f< DeserializableT, BinaryFunctorT >::deserializable_f ( type _ref,
BinaryFunctorT  f 
) [inline]

Definition at line 730 of file functional.hpp.


Member Function Documentation

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
template<typename NodeType>
bool s11n::deserializable_f< DeserializableT, BinaryFunctorT >::operator() ( const NodeType &  src  )  const [inline]

Returns deserialize( src, this->ref ).

Calling after this->ref has been destroyed yields undefined behaviour.

Definition at line 740 of file functional.hpp.

References s11n::deserializable_f< DeserializableT, BinaryFunctorT >::functor.

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
type& s11n::deserializable_f< DeserializableT, BinaryFunctorT >::operator() (  )  const [inline]

Retyurns a reference to this object's referenced Serializable.

Definition at line 746 of file functional.hpp.

References s11n::deserializable_f< DeserializableT, BinaryFunctorT >::reference.


Member Data Documentation

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
reference_f<type> s11n::deserializable_f< DeserializableT, BinaryFunctorT >::reference

Definition at line 720 of file functional.hpp.

Referenced by s11n::deserializable_f< DeserializableT, BinaryFunctorT >::operator()().

template<typename DeserializableT, typename BinaryFunctorT = deserialize_binary_f>
BinaryFunctorT s11n::deserializable_f< DeserializableT, BinaryFunctorT >::functor

Definition at line 721 of file functional.hpp.

Referenced by s11n::deserializable_f< DeserializableT, BinaryFunctorT >::operator()().


The documentation for this struct was generated from the following file:
Generated on Wed Jun 4 21:46:54 2008 for libs11n by  doxygen 1.5.3