$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r58985 - in branches/release/boost/bimap: . container_adaptor detail relation/detail relation/support views
From: matias.capeletto_at_[hidden]
Date: 2010-01-13 14:04:39
Author: matias
Date: 2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
New Revision: 58985
URL: http://svn.boost.org/trac/boost/changeset/58985
Log:
merge from trunk (58852-58891)
Properties modified: 
   branches/release/boost/bimap/   (props changed)
Text files modified: 
   branches/release/boost/bimap/bimap.hpp                                           |   131 ++++++++++++++++++++------------------- 
   branches/release/boost/bimap/container_adaptor/associative_container_adaptor.hpp |     2                                         
   branches/release/boost/bimap/container_adaptor/sequence_container_adaptor.hpp    |     1                                         
   branches/release/boost/bimap/detail/map_view_base.hpp                            |     1                                         
   branches/release/boost/bimap/detail/set_view_base.hpp                            |     1                                         
   branches/release/boost/bimap/relation/detail/mutant.hpp                          |     4                                         
   branches/release/boost/bimap/relation/support/data_extractor.hpp                 |     1                                         
   branches/release/boost/bimap/views/list_set_view.hpp                             |     1                                         
   branches/release/boost/bimap/views/vector_set_view.hpp                           |     2                                         
   9 files changed, 75 insertions(+), 69 deletions(-)
Modified: branches/release/boost/bimap/bimap.hpp
==============================================================================
--- branches/release/boost/bimap/bimap.hpp	(original)
+++ branches/release/boost/bimap/bimap.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -196,78 +196,79 @@
 
     typedef BOOST_DEDUCED_TYPENAME base_::relation::info_type info_type;
 
+    typedef BOOST_DEDUCED_TYPENAME base_::core_type::allocator_type allocator_type; 
+    
     /// Left map view
     left_map  left;
 
     /// Right map view
     right_map right;
 
-    bimap() :
+    typedef BOOST_DEDUCED_TYPENAME base_::logic_relation_set_tag 
+                                          logic_relation_set_tag;
+    typedef BOOST_DEDUCED_TYPENAME base_::logic_left_tag logic_left_tag;
+    typedef BOOST_DEDUCED_TYPENAME base_::logic_right_tag logic_right_tag;
+    typedef BOOST_DEDUCED_TYPENAME base_::core_type::ctor_args_list 
+                                                     ctor_args_list;
+
+   bimap(const allocator_type& al = allocator_type()) :
+
+       base_::relation_set(
+           ::boost::multi_index::get<
+               logic_relation_set_tag
+           >(core)
+       ),
+
+       core(al),
+
+       left (
+           ::boost::multi_index::get<
+               logic_left_tag
+           >(core)
+       ),
+       right (
+           ::boost::multi_index::get<
+               logic_right_tag
+           >(core)
+       )
+
+   {}
+
+   template< class InputIterator >
+   bimap(InputIterator first,InputIterator last,
+         const allocator_type& al = allocator_type()) :
+
+       base_::relation_set(
+           ::boost::multi_index::get<logic_relation_set_tag>(core)
+       ),
+
+       core(first,last,ctor_args_list(),al),
+
+       left (
+           ::boost::multi_index::get<logic_left_tag>(core)
+       ),
+       right (
+           ::boost::multi_index::get<logic_right_tag>(core)
+       )
+
+   {}
+
+   bimap(const bimap& x) :
+
+       base_::relation_set(
+           ::boost::multi_index::get<logic_relation_set_tag>(core)
+       ),
+
+       core(x.core),
+
+       left (
+           ::boost::multi_index::get<logic_left_tag>(core)
+       ),
+       right (
+           ::boost::multi_index::get<logic_right_tag>(core)
+       )
 
-        base_::relation_set(
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_relation_set_tag 
-            >(core) 
-        ),
-        left (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_left_tag
-            >(core)
-        ),
-        right (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_right_tag 
-            >(core)
-        )
-
-    {}
-
-    template< class InputIterator >
-    bimap(InputIterator first,InputIterator last) :
-
-        base_::relation_set(
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_relation_set_tag
-            >(core) 
-        ),
-
-        core(first,last),
-
-        left (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_left_tag
-            >(core)
-        ),
-        right (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_right_tag
-            >(core)
-        )
-
-    {}
-
-    bimap(const bimap& x) :
-
-        base_::relation_set(
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_relation_set_tag
-            >(core) 
-        ),
-
-        core(x.core),
-
-        left (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_left_tag
-            >(core)
-        ),
-        right (
-            ::boost::multi_index::get<
-                BOOST_DEDUCED_TYPENAME base_::logic_right_tag
-            >(core)
-        )
-
-    {}
+   {}
 
     bimap& operator=(const bimap& x)
     {
Modified: branches/release/boost/bimap/container_adaptor/associative_container_adaptor.hpp
==============================================================================
--- branches/release/boost/bimap/container_adaptor/associative_container_adaptor.hpp	(original)
+++ branches/release/boost/bimap/container_adaptor/associative_container_adaptor.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -178,7 +178,7 @@
     }
 
     template< class CompatibleKey >
-    BOOST_DEDUCED_TYPENAME base_::size_type count(const CompatibleKey & k)
+    BOOST_DEDUCED_TYPENAME base_::size_type count(const CompatibleKey & k) const
     {
         return this->base().count(
             this->template functor<key_to_base>()(k)
Modified: branches/release/boost/bimap/container_adaptor/sequence_container_adaptor.hpp
==============================================================================
--- branches/release/boost/bimap/container_adaptor/sequence_container_adaptor.hpp	(original)
+++ branches/release/boost/bimap/container_adaptor/sequence_container_adaptor.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -26,6 +26,7 @@
 #include <boost/bimap/container_adaptor/detail/identity_converters.hpp>
 #include <boost/bimap/container_adaptor/container_adaptor.hpp>
 #include <boost/call_traits.hpp>
+#include <boost/operators.hpp>
 
 namespace boost {
 namespace bimaps {
Modified: branches/release/boost/bimap/detail/map_view_base.hpp
==============================================================================
--- branches/release/boost/bimap/detail/map_view_base.hpp	(original)
+++ branches/release/boost/bimap/detail/map_view_base.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -21,6 +21,7 @@
 #include <stdexcept>
 #include <utility>
 
+#include <boost/throw_exception.hpp>
 #include <boost/type_traits/is_const.hpp>
 #include <boost/mpl/if.hpp>
 
Modified: branches/release/boost/bimap/detail/set_view_base.hpp
==============================================================================
--- branches/release/boost/bimap/detail/set_view_base.hpp	(original)
+++ branches/release/boost/bimap/detail/set_view_base.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -25,6 +25,7 @@
 #include <boost/bimap/relation/support/get_pair_functor.hpp>
 #include <boost/bimap/relation/detail/to_mutable_relation_functor.hpp>
 #include <boost/bimap/relation/mutant_relation.hpp>
+#include <boost/bimap/container_adaptor/support/iterator_facade_converters.hpp>
 
 namespace boost {
 namespace bimaps {
Modified: branches/release/boost/bimap/relation/detail/mutant.hpp
==============================================================================
--- branches/release/boost/bimap/relation/detail/mutant.hpp	(original)
+++ branches/release/boost/bimap/relation/detail/mutant.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -56,7 +56,7 @@
     BOOST_MPL_ASSERT((
         ::boost::mpl::contains<BOOST_DEDUCED_TYPENAME Type::mutant_views,View>
     ));
-    return *reinterpret_cast< View* >(addressof(m));
+    return *reinterpret_cast< View* >(boost::addressof(m));
 }
 
 template< class View, class Type >
@@ -69,7 +69,7 @@
     BOOST_MPL_ASSERT((
         ::boost::mpl::contains<BOOST_DEDUCED_TYPENAME Type::mutant_views,View> 
     ));
-    return *reinterpret_cast< const View* >(addressof(m));
+    return *reinterpret_cast< const View* >(boost::addressof(m));
 }
 
 //@}
Modified: branches/release/boost/bimap/relation/support/data_extractor.hpp
==============================================================================
--- branches/release/boost/bimap/relation/support/data_extractor.hpp	(original)
+++ branches/release/boost/bimap/relation/support/data_extractor.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -19,6 +19,7 @@
 #include <boost/config.hpp>
 
 #include <boost/bimap/relation/detail/metadata_access_builder.hpp>
+#include <functional>
 
 /** \struct boost::bimaps::relation::support::data_extractor
 
Modified: branches/release/boost/bimap/views/list_set_view.hpp
==============================================================================
--- branches/release/boost/bimap/views/list_set_view.hpp	(original)
+++ branches/release/boost/bimap/views/list_set_view.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -20,6 +20,7 @@
 
 #include <boost/bimap/container_adaptor/list_adaptor.hpp>
 #include <boost/bimap/detail/set_view_base.hpp>
+#include <boost/bimap/detail/map_view_base.hpp>
 
 namespace boost {
 namespace bimaps {
Modified: branches/release/boost/bimap/views/vector_set_view.hpp
==============================================================================
--- branches/release/boost/bimap/views/vector_set_view.hpp	(original)
+++ branches/release/boost/bimap/views/vector_set_view.hpp	2010-01-13 14:04:38 EST (Wed, 13 Jan 2010)
@@ -21,7 +21,7 @@
 #include <boost/bimap/container_adaptor/vector_adaptor.hpp>
 #include <boost/bimap/container_adaptor/detail/comparison_adaptor.hpp>
 #include <boost/bimap/detail/set_view_base.hpp>
-
+#include <boost/bimap/detail/map_view_base.hpp>
 
 namespace boost {
 namespace bimaps {