Ticket #1721: serialization_examples.patch
File serialization_examples.patch, 4.3 KB (added by , 15 years ago) |
---|
-
boost/archive/impl/archive_pointer_oserializer.ipp
22 22 23 23 namespace { // anon 24 24 template<class Archive> 25 class serializer_map : public basic_serializer_map25 class oserializer_map : public basic_serializer_map 26 26 { 27 27 }; 28 28 } … … 35 35 basic_pointer_oserializer(eti) 36 36 { 37 37 std::pair< 38 BOOST_DEDUCED_TYPENAME serializer_map<Archive>::iterator,38 BOOST_DEDUCED_TYPENAME oserializer_map<Archive>::iterator, 39 39 bool 40 40 > result; 41 41 result = serialization::singleton< 42 serializer_map<Archive>42 oserializer_map<Archive> 43 43 >::get_mutable_instance().insert(this); 44 44 assert(result.second); 45 45 } … … 52 52 const basic_serializer_arg bs(eti); 53 53 basic_serializer_map::const_iterator it; 54 54 it = boost::serialization::singleton< 55 serializer_map<Archive>55 oserializer_map<Archive> 56 56 >::get_const_instance().find(& bs); 57 57 assert( 58 58 it 59 59 != 60 60 boost::serialization::singleton< 61 serializer_map<Archive>61 oserializer_map<Archive> 62 62 >::get_const_instance().end() 63 63 ); 64 64 return static_cast<const basic_pointer_oserializer *>(*it); … … 71 71 // on static variables being constructed in a specific sequence 72 72 unsigned int count; 73 73 count = serialization::singleton< 74 serializer_map<Archive>74 oserializer_map<Archive> 75 75 >::get_mutable_instance().erase(this); 76 76 assert(count); 77 77 } -
boost/archive/impl/archive_pointer_iserializer.ipp
23 23 24 24 namespace { // anon 25 25 template<class Archive> 26 class serializer_map : public basic_serializer_map26 class iserializer_map : public basic_serializer_map 27 27 { 28 28 }; 29 29 } … … 35 35 ) : 36 36 basic_pointer_iserializer(eti) 37 37 { 38 std::pair<BOOST_DEDUCED_TYPENAME serializer_map<Archive>::iterator, bool> result;38 std::pair<BOOST_DEDUCED_TYPENAME iserializer_map<Archive>::iterator, bool> result; 39 39 result = serialization::singleton< 40 serializer_map<Archive>40 iserializer_map<Archive> 41 41 >::get_mutable_instance().insert(this); 42 42 assert(result.second); 43 43 } … … 48 48 const boost::serialization::extended_type_info & eti 49 49 ){ 50 50 const basic_serializer_arg bs(eti); 51 BOOST_DEDUCED_TYPENAME serializer_map<Archive>::const_iterator it;51 BOOST_DEDUCED_TYPENAME iserializer_map<Archive>::const_iterator it; 52 52 it = boost::serialization::singleton< 53 serializer_map<Archive>53 iserializer_map<Archive> 54 54 >::get_const_instance().find(& bs); 55 55 assert( 56 56 it 57 57 != 58 58 boost::serialization::singleton< 59 serializer_map<Archive>59 iserializer_map<Archive> 60 60 >::get_const_instance().end() 61 61 ); 62 62 return static_cast<const basic_pointer_iserializer *>(*it); … … 69 69 // on static variables being constructed in a specific sequence 70 70 unsigned int count; 71 71 count = serialization::singleton< 72 serializer_map<Archive>72 iserializer_map<Archive> 73 73 >::get_mutable_instance().erase(this); 74 74 assert(count); 75 75 } -
libs/serialization/example/demo_shared_ptr.cpp
41 41 } 42 42 public: 43 43 static int count; 44 A ::A(){++count;} // default constructor45 virtual A::~A(){--count;} // default destructor44 A(){++count;} // default constructor 45 virtual ~A(){--count;} // default destructor 46 46 }; 47 47 48 48 BOOST_SERIALIZATION_SHARED_PTR(A) … … 60 60 } 61 61 public: 62 62 static int count; 63 B ::B() : A() {};64 virtual B::~B() {};63 B() : A() {}; 64 virtual ~B() {}; 65 65 }; 66 66 67 67 BOOST_SERIALIZATION_SHARED_PTR(B)