Update of /cvsroot/boost/boost/boost/archive/array
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv3001/array
Modified Files:
iarchive.hpp oarchive.hpp
Removed Files:
binary_iarchive.hpp binary_oarchive.hpp
Log Message:
Index: iarchive.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/archive/array/iarchive.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- iarchive.hpp 1 May 2006 00:04:28 -0000 1.2
+++ iarchive.hpp 22 Jun 2006 07:20:23 -0000 1.3
@@ -9,7 +9,7 @@
#include <boost/archive/basic_archive.hpp>
#include <boost/archive/archive_exception.hpp>
-#include <boost/archive/array/detail/forward_constructor.hpp>
+#include <boost/archive/detail/common_iarchive.hpp>
#include <boost/serialization/nvp.hpp>
#include <boost/serialization/array.hpp>
#include <boost/serialization/collection_size_type.hpp>
@@ -40,13 +40,16 @@
// with the load_array member function, and to mpl::false_ if
// the unoptimized procedure must be used.
-template <class Derived, class Base>
+template <class Archive>
class iarchive
- : public Base
+ : public archive::detail::common_iarchive<Archive>
{
+ typedef archive::detail::common_iarchive<Archive> Base;
public:
+ iarchive(unsigned int flags)
+ : archive::detail::common_iarchive<Archive>(flags)
+ {}
- BOOST_ARCHIVE_FORWARD_CONSTRUCTOR(iarchive,Base)
// save_override for std::vector and serialization::array dispatches to
// save_optimized with an additional argument.
@@ -79,7 +82,7 @@
void load_optimized(
serialization::array<ValueType> &t, unsigned int version, mpl::true_)
{
- This()->load_array(t,version);
+ this->This()->load_array(t,version);
}
@@ -91,7 +94,7 @@
void load_override(std::vector<ValueType,Allocator> &x, unsigned int version)
{
typedef typename mpl::apply1<
- BOOST_DEDUCED_TYPENAME Derived::use_array_optimization
+ BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, ValueType
>::type use_optimized;
load_optimized(x,version, use_optimized() );
@@ -103,24 +106,18 @@
void load_override(serialization::array<ValueType> const& x, unsigned int
version)
{
typedef typename mpl::apply1<
- BOOST_DEDUCED_TYPENAME Derived::use_array_optimization
+ BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, ValueType
>::type use_optimized;
load_optimized(const_cast<serialization::array<ValueType>&>(x),version,use_optimized());
}
- // Load everything else in the usual way, forwarding on to the
- // Base class
+ // Load everything else in the usual way, forwarding on to the base class
template<class T>
void load_override(T & x, unsigned BOOST_PFTO int version)
{
Base::load_override(x, static_cast<unsigned int>(version));
}
-private:
- Derived * This()
- {
- return static_cast<Derived*>(this);
- }
};
Index: oarchive.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/archive/array/oarchive.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- oarchive.hpp 1 May 2006 00:04:28 -0000 1.2
+++ oarchive.hpp 22 Jun 2006 07:20:23 -0000 1.3
@@ -8,7 +8,7 @@
#include <boost/archive/basic_archive.hpp>
-#include <boost/archive/array/detail/forward_constructor.hpp>
+#include <boost/archive/detail/common_oarchive.hpp>
#include <boost/serialization/array.hpp>
#include <boost/serialization/collection_size_type.hpp>
#include <boost/serialization/nvp.hpp>
@@ -38,13 +38,16 @@
// with the load_array member function, and to mpl::false_ if
// the unoptimized procedure must be used.
-template <class Derived, class Base>
+template <class Archive>
class oarchive
- : public Base
+ : public archive::detail::common_oarchive<Archive>
{
+ typedef archive::detail::common_oarchive<Archive> Base;
public:
- BOOST_ARCHIVE_FORWARD_CONSTRUCTOR(oarchive,Base)
+ oarchive(unsigned int flags)
+ : archive::detail::common_oarchive<Archive>(flags)
+ {}
// save_override for std::vector and serialization::array dispatches to
// save_optimized with an additional argument.
@@ -75,7 +78,7 @@
void save_optimized(
const serialization::array<ValueType> &t, unsigned int version, mpl::true_)
{
- This()->save_array(t,version);
+ this->This()->save_array(t,version);
}
@@ -87,7 +90,7 @@
void save_override(std::vector<ValueType,Allocator> const &x, unsigned int
version)
{
typedef typename mpl::apply1<
- BOOST_DEDUCED_TYPENAME Derived::use_array_optimization
+ BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, BOOST_DEDUCED_TYPENAME remove_const<ValueType>::type
>::type use_optimized;
save_optimized(x,version,use_optimized() );
@@ -99,7 +102,7 @@
void save_override(serialization::array<ValueType> const& x, unsigned int
version)
{
typedef typename mpl::apply1<
- BOOST_DEDUCED_TYPENAME Derived::use_array_optimization
+ BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, BOOST_DEDUCED_TYPENAME remove_const<ValueType>::type
>::type use_optimized;
save_optimized(x,version,use_optimized());
@@ -112,11 +115,6 @@
{
Base::save_override(x, static_cast<unsigned int>(version));
}
-private:
- Derived * This()
- {
- return static_cast<Derived*>(this);
- }
};
} } } // end namespace boost::archive::array
--- binary_iarchive.hpp DELETED ---
--- binary_oarchive.hpp DELETED ---
All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs