comparison DEPENDENCIES/generic/include/boost/archive/text_oarchive.hpp @ 101:c530137014c0

Update Boost headers (1.58.0)
author Chris Cannam
date Mon, 07 Sep 2015 11:12:49 +0100
parents 2665513ce2d3
children
comparison
equal deleted inserted replaced
100:793467b5e61c 101:c530137014c0
1 #ifndef BOOST_ARCHIVE_TEXT_OARCHIVE_HPP 1 #ifndef BOOST_ARCHIVE_TEXT_OARCHIVE_HPP
2 #define BOOST_ARCHIVE_TEXT_OARCHIVE_HPP 2 #define BOOST_ARCHIVE_TEXT_OARCHIVE_HPP
3 3
4 // MS compatible compilers support #pragma once 4 // MS compatible compilers support #pragma once
5 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 5 #if defined(_MSC_VER)
6 # pragma once 6 # pragma once
7 #endif 7 #endif
8 8
9 /////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8 9 /////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
10 // text_oarchive.hpp 10 // text_oarchive.hpp
40 #endif 40 #endif
41 41
42 namespace boost { 42 namespace boost {
43 namespace archive { 43 namespace archive {
44 44
45 namespace detail {
46 template<class Archive> class interface_oarchive;
47 } // namespace detail
48
45 template<class Archive> 49 template<class Archive>
46 class text_oarchive_impl : 50 class text_oarchive_impl :
47 /* protected ? */ public basic_text_oprimitive<std::ostream>, 51 /* protected ? */ public basic_text_oprimitive<std::ostream>,
48 public basic_text_oarchive<Archive> 52 public basic_text_oarchive<Archive>
49 { 53 {
50 #ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS 54 #ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS
51 public: 55 public:
52 #else 56 #else
53 friend class detail::interface_oarchive<Archive>;
54 friend class basic_text_oarchive<Archive>;
55 friend class save_access;
56 protected: 57 protected:
58 #if BOOST_WORKAROUND(BOOST_MSVC, < 1500)
59 // for some inexplicable reason insertion of "class" generates compile erro
60 // on msvc 7.1
61 friend detail::interface_oarchive<Archive>;
62 friend basic_text_oarchive<Archive>;
63 friend save_access;
64 #else
65 friend class detail::interface_oarchive<Archive>;
66 friend class basic_text_oarchive<Archive>;
67 friend class save_access;
68 #endif
57 #endif 69 #endif
58 template<class T> 70 template<class T>
59 void save(const T & t){ 71 void save(const T & t){
60 this->newtoken(); 72 this->newtoken();
61 basic_text_oprimitive<std::ostream>::save(t); 73 basic_text_oprimitive<std::ostream>::save(t);
100 text_oarchive_impl<text_oarchive>(os_, flags) 112 text_oarchive_impl<text_oarchive>(os_, flags)
101 {} 113 {}
102 ~text_oarchive(){} 114 ~text_oarchive(){}
103 }; 115 };
104 116
105 typedef text_oarchive naked_text_oarchive;
106
107 } // namespace archive 117 } // namespace archive
108 } // namespace boost 118 } // namespace boost
109 119
110 // required by export 120 // required by export
111 BOOST_SERIALIZATION_REGISTER_ARCHIVE(boost::archive::text_oarchive) 121 BOOST_SERIALIZATION_REGISTER_ARCHIVE(boost::archive::text_oarchive)