zeep::xml::serializer
// In header: </home/maarten/projects/libzeep/zeep/xml/serialize.hpp> struct serializer { // construct/copy/destruct serializer(container *, bool = true); // public member functions template<typename T> serializer & operator&(const boost::serialization::nvp< T > &); template<typename T> serializer & serialize(const char *, const T &); // public data members container * m_node; bool m_make_node; };
All serializers and deserializers work on an object that contains a pointer to the node just above the actual node holding their data. If any.
This means for the serializer that it has to create a new node, set the content and add it to the passed in node. For deserializers this means looking up the first child matching the name in the passed-in node to fetch the data from.
serializer
public member functionstemplate<typename T> serializer & operator&(const boost::serialization::nvp< T > & rhs);
template<typename T> serializer & serialize(const char * name, const T & data);