s11n::serialize_to_subnode_f< BinaryFunctorT > Struct Template Reference

Experimental. More...

#include <functional.hpp>

Inheritance diagram for s11n::serialize_to_subnode_f< BinaryFunctorT >:
s11n::serialize_binary_f_tag s11n::serialize_f_tag

List of all members.

Public Member Functions

 serialize_to_subnode_f (const std::string &subnodename, BinaryFunctorT f)
 serialize_to_subnode_f (const std::string &subnodename)
template<typename NodeType , typename SerializableT >
bool operator() (NodeType &dest, SerializableT const &src) const
 Creates a NodeType names this->name and calls this->functor( child, src ).

Public Attributes

std::string name
BinaryFunctorT functor

Detailed Description

template<typename BinaryFunctorT = serialize_f>
struct s11n::serialize_to_subnode_f< BinaryFunctorT >

Experimental.

Added in 1.1.3.

BinaryFunctorT must have:

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

Definition at line 893 of file functional.hpp.


Constructor & Destructor Documentation

template<typename BinaryFunctorT = serialize_f>
s11n::serialize_to_subnode_f< BinaryFunctorT >::serialize_to_subnode_f ( const std::string &  subnodename,
BinaryFunctorT  f 
) [inline]

Definition at line 902 of file functional.hpp.

template<typename BinaryFunctorT = serialize_f>
s11n::serialize_to_subnode_f< BinaryFunctorT >::serialize_to_subnode_f ( const std::string &  subnodename  )  [inline, explicit]

Definition at line 909 of file functional.hpp.


Member Function Documentation

template<typename BinaryFunctorT = serialize_f>
template<typename NodeType , typename SerializableT >
bool s11n::serialize_to_subnode_f< BinaryFunctorT >::operator() ( NodeType &  dest,
SerializableT const &  src 
) const [inline]

Creates a NodeType names this->name and calls this->functor( child, src ).

If the functor fails, the child is deleted and dest is unmodified, else ownership of the child is transfered to dest, via node_traits<NodeType>::children(dest).push_back(child).

Returns true on success, false on failure.

Definition at line 924 of file functional.hpp.

References s11n::fac::create(), s11n::serialize_to_subnode_f< BinaryFunctorT >::functor, and s11n::serialize_to_subnode_f< BinaryFunctorT >::name.


Member Data Documentation

template<typename BinaryFunctorT = serialize_f>
BinaryFunctorT s11n::serialize_to_subnode_f< BinaryFunctorT >::functor
template<typename BinaryFunctorT = serialize_f>
std::string s11n::serialize_to_subnode_f< BinaryFunctorT >::name

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

Generated on Sat Mar 20 12:29:25 2010 for libs11n-1.2.10 by  doxygen 1.6.1