epoc32/include/stdapis/boost/pending/property_serialize.hpp
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
permissions -rw-r--r--
Final list of Symbian^2 public API header files
williamr@2
     1
//  (C) Copyright Jeremy Siek 2006
williamr@2
     2
//  Distributed under the Boost Software License, Version 1.0. (See
williamr@2
     3
//  accompanying file LICENSE_1_0.txt or copy at
williamr@2
     4
//  http://www.boost.org/LICENSE_1_0.txt)
williamr@2
     5
williamr@2
     6
#ifndef BOOST_PROPERTY_SERIALIZE_HPP
williamr@2
     7
#define BOOST_PROPERTY_SERIALIZE_HPP
williamr@2
     8
williamr@2
     9
#include <boost/pending/property.hpp>
williamr@2
    10
williamr@2
    11
#include <boost/serialization/base_object.hpp>
williamr@2
    12
#include <boost/serialization/nvp.hpp>
williamr@2
    13
williamr@2
    14
namespace boost {
williamr@2
    15
  template<class Archive>
williamr@2
    16
  inline void serialize(Archive&, no_property&, const unsigned int) { }
williamr@2
    17
williamr@2
    18
  template<class Archive, class Tag, class T, class Base>
williamr@2
    19
  void 
williamr@2
    20
  serialize(Archive& ar, property<Tag, T, Base>& prop, 
williamr@2
    21
            const unsigned int version) 
williamr@2
    22
  {
williamr@2
    23
    ar & serialization::make_nvp( "property_base" , boost::serialization::base_object<Base>(prop) );
williamr@2
    24
    ar & serialization::make_nvp( "property_value" , prop.m_value );
williamr@2
    25
  }
williamr@2
    26
} // end namespace boost
williamr@2
    27
williamr@2
    28
#endif // BOOST_PROPERTY_SERIALIZE_HPP