| Report problems to ATLAS LXR Team (with time and IP address indicated) |
|
[ source navigation ] [ diff markup ] [ identifier search ] [ general search ] |
||||
|
||||||
| Links to LXR source navigation pages for stable releases | [ 12.*.* ] [ 13.*.* ] [ 14.*.* ] | |||||
001 #ifndef BOOST_SERIALIZATION_TRAITS_HPP 002 #define BOOST_SERIALIZATION_TRAITS_HPP 003 004 // MS compatible compilers support #pragma once 005 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 006 # pragma once 007 #endif 008 009 /////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8 010 // traits.hpp: 011 012 // (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . 013 // Use, modification and distribution is subject to the Boost Software 014 // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 015 // http://www.boost.org/LICENSE_1_0.txt) 016 017 // See http://www.boost.org for updates, documentation, and revision history. 018 019 // This header is used to apply serialization traits to templates. The 020 // standard system can't be used for platforms which don't support 021 // Partial Templlate Specialization. 022 023 // The motivation for this is the Name-Value Pair (NVP) template. 024 // it has to work the same on all platforms in order for archives 025 // to be portable accross platforms. 026 027 #include <boost/config.hpp> 028 #include <boost/static_assert.hpp> 029 030 #include <boost/mpl/int.hpp> 031 #include <boost/serialization/level_enum.hpp> 032 #include <boost/serialization/tracking_enum.hpp> 033 034 namespace boost { 035 namespace serialization { 036 037 // common base class used to detect appended traits class 038 struct basic_traits {}; 039 040 template <class T> 041 struct extended_type_info_impl; 042 043 template< 044 class T, 045 int Level, 046 int Tracking, 047 unsigned int Version = 0, 048 class ETII = extended_type_info_impl< T > 049 > 050 struct traits : public basic_traits { 051 BOOST_STATIC_ASSERT(Version == 0 || Level >= object_class_info); 052 BOOST_STATIC_ASSERT(Tracking == track_never || Level >= object_serializable); 053 typedef BOOST_DEDUCED_TYPENAME mpl::int_<Level> level; 054 typedef BOOST_DEDUCED_TYPENAME mpl::int_<Tracking> tracking; 055 typedef BOOST_DEDUCED_TYPENAME mpl::int_<Version> version; 056 typedef ETII type_info_implementation; 057 }; 058 059 } // namespace serialization 060 } // namespace boost 061 062 #endif // BOOST_SERIALIZATION_TRAITS_HPP 063
| [ source navigation ] | [ diff markup ] | [ identifier search ] | [ general search ] |
| Due to the LXR bug, the updates fail sometimes to remove references to deleted files. The Saturday's full rebuilds fix these problems | |
| This page was automatically generated by the LXR engine. |
|