serialize.hpp File Reference

#include <stdexcept>
#include <s11n.net/s11n/serialize.tpp>

Go to the source code of this file.

Classes

struct  s11n::Detail::s11n_api_marshaler< NodeType, SerializableT >
struct  s11n::Detail::s11n_api_marshaler< NodeType, SerializableT * >
 A specialization to handle pointer types the same as reference/value types. More...
struct  s11n::cleaner_upper
 Intended for use with for_each(), this type cleans up Serializables using cleanup_serializable(). More...
struct  s11n::cleanup_ptr< SerializableT >
 An auto_ptr-like type intended to simplify pointer/exception safety in some deserialization algorithms by providing a way to completely and safely destroy partially-deserialized objects. More...

Namespaces

namespace  s11n
 

The s11n serialization (s11n) framework is an object serialization framework for C++ modelled heavily off work by Rusty Ballinger (bozo@users.sourceforge.net http://libfunutil.sourceforge.net).


namespace  s11n::Detail
 

The Detail namespace holds types which aren't strictly internal/private, but are nonetheless considered to be "implementation details." Unless specifically documented otherwise, clients are discouraged from using the Detail-namespace API from client code, as any part of it may change significantly or be replaced/removed without any warning.


Functions

template<typename DataNodeType , typename SerializableT >
bool s11n::serialize (DataNodeType &target, const SerializableT &src)
 Serializes src to target using the default API marshaling mechanism.
template<typename SerializableType >
void s11n::cleanup_serializable (SerializableType &s) throw ()
 Calls s11n_traits<SerializableType>::cleanup_functor()(s).
template<typename SerializableType >
void s11n::cleanup_serializable (SerializableType *&s) throw ()
 This overload provides cleanup handling for pointer types.
template<typename DataNodeType , typename DeserializableT >
bool s11n::deserialize (const DataNodeType &src, DeserializableT &target)
 Deserializes target from src using the default API marshaling mechanism.
template<typename DataNodeType , typename DeserializableT >
bool s11n::deserialize (const DataNodeType &src, DeserializableT *&target)
 Like the standard form of deserialize(), but if passed a null pointer, it attempts to classload the class and assign the passed-in pointer to it.
template<typename DataNodeType , typename DeserializableT >
bool s11n::deserialize (const DataNodeType &src, cleanup_ptr< DeserializableT > &target)
 Identical to deserialize(const DataNodeType&,DeserializableT*&) except that it works on a cleanup_ptr<>.
template<typename DataNodeType , typename DeserializableT >
DeserializableT * s11n::deserialize (const DataNodeType &src)
 Tries to deserialize a DeserializableT from src, using s11n_traits<DeserializableT>::factory_type()(node_traits<DataNodeType>::class_name(src)) to create a new DeserializableT.
template<typename DataNodeType , typename SerializableType >
SerializableType * s11n::s11n_clone (const SerializableType &tocp)
 Clones an arbitrary SerializableType using its DataNodeType serialization implementation.
template<typename NodeType , typename Type1 , typename Type2 >
bool s11n::s11n_cast (const Type1 &t1, Type2 &t2)
 "Casts" t1 to t2 using serialization.

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