os/ossrv/ossrv_pub/boost_apis/boost/pending/property_serialize.hpp
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 //  (C) Copyright Jeremy Siek 2006
     2 //  Distributed under the Boost Software License, Version 1.0. (See
     3 //  accompanying file LICENSE_1_0.txt or copy at
     4 //  http://www.boost.org/LICENSE_1_0.txt)
     5 
     6 #ifndef BOOST_PROPERTY_SERIALIZE_HPP
     7 #define BOOST_PROPERTY_SERIALIZE_HPP
     8 
     9 #include <boost/pending/property.hpp>
    10 
    11 #include <boost/serialization/base_object.hpp>
    12 #include <boost/serialization/nvp.hpp>
    13 
    14 namespace boost {
    15   template<class Archive>
    16   inline void serialize(Archive&, no_property&, const unsigned int) { }
    17 
    18   template<class Archive, class Tag, class T, class Base>
    19   void 
    20   serialize(Archive& ar, property<Tag, T, Base>& prop, 
    21             const unsigned int version) 
    22   {
    23     ar & serialization::make_nvp( "property_base" , boost::serialization::base_object<Base>(prop) );
    24     ar & serialization::make_nvp( "property_value" , prop.m_value );
    25   }
    26 } // end namespace boost
    27 
    28 #endif // BOOST_PROPERTY_SERIALIZE_HPP