123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /* /libs/serialization/xml_performance/node.hpp ********************************
- (C) Copyright 2010 Bryce Lelbach
- Use, modification and distribution is subject to the Boost Software License,
- Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
- http://www.boost.org/LICENSE_1_0.txt)
- *******************************************************************************/
- #if !defined(BOOST_SERIALIZATION_XML_PERFORMANCE_NODE_HPP)
- #define BOOST_SERIALIZATION_XML_PERFORMANCE_NODE_HPP
- #if defined(_MSC_VER)
- #pragma once
- #endif
- #include <boost/serialization/nvp.hpp>
- #include <boost/serialization/utility.hpp>
- #include <boost/serialization/list.hpp>
- #include <boost/serialization/version.hpp>
- #include "macro.hpp"
- namespace boost {
- namespace archive {
- namespace xml {
- struct unused_type { };
- template<
- typename T,
- BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(
- BOOST_PP_SUB(BSL_NODE_MAX, 1), typename T, unused_type
- )
- > struct node;
- BOOST_PP_REPEAT_FROM_TO(1, BSL_NODE_MAX, BSL_NODE_DECL, _)
- template<BOOST_PP_ENUM_PARAMS(BSL_NODE_MAX, typename T)>
- struct node {
- BOOST_PP_REPEAT(BSL_NODE_MAX, BSL_NODE_DECL_MEMBER, _)
- template<class ARC>
- void serialize (ARC& ar, const unsigned int) {
- ar
- BOOST_PP_REPEAT(BSL_NODE_MAX, BSL_NODE_SERIALIZE, _)
- ;
- }
-
- BSL_NODE_xDECL_CTOR()
-
- node (BOOST_PP_ENUM_BINARY_PARAMS(BSL_NODE_MAX, T, p)):
- BOOST_PP_REPEAT(BSL_NODE_MAX, BSL_NODE_INIT_LIST, _)
- { }
- };
- } // xml
- } // archive
- } // boost
- #endif // BOOST_SERIALIZATION_XML_PERFORMANCE_NODE_HPP
|