Update of /cvsroot/boost/boost/boost/intrusive
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25962
Modified Files:
circular_list_algorithms.hpp circular_slist_algorithms.hpp
hashtable.hpp rbtree_algorithms.hpp
Log Message:
Compilation times improvements
Index: circular_list_algorithms.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/intrusive/circular_list_algorithms.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- circular_list_algorithms.hpp 12 May 2007 12:52:31 -0000 1.2
+++ circular_list_algorithms.hpp 23 May 2007 16:07:02 -0000 1.3
@@ -15,10 +15,7 @@
#define BOOST_INTRUSIVE_CIRCULAR_LIST_ALGORITHMS_HPP
#include <boost/intrusive/detail/config_begin.hpp>
-#include <iterator>
-#include <boost/assert.hpp>
#include <boost/intrusive/intrusive_fwd.hpp>
-#include <boost/intrusive/detail/pointer_to_other.hpp>
#include <cstddef>
namespace boost {
@@ -175,8 +172,10 @@
//! <b>Complexity</b>: Constant
//!
//! <b>Throws</b>: Nothing.
+/*
static void swap_nodes(node_ptr this_node, node_ptr other_node)
{
+
if (other_node == this_node)
return;
bool empty1 = unique(this_node);
@@ -209,7 +208,8 @@
NodeTraits::set_previous(next_this, other_node);
}
}
-/*
+*/
+
//Watanabe version
private:
static void swap_prev(node_ptr this_node, node_ptr other_node)
@@ -238,7 +238,7 @@
swap_next(this_node, other_node);
swap_prev(this_node, other_node);
}
-*/
+
//! <b>Requires</b>: b and e must be nodes of the same circular list or an
empty range.
//! and p must be a node of a different circular list or may not be an
iterator in
// [b, e).
Index: circular_slist_algorithms.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/intrusive/circular_slist_algorithms.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- circular_slist_algorithms.hpp 12 May 2007 12:52:31 -0000 1.2
+++ circular_slist_algorithms.hpp 23 May 2007 16:07:02 -0000 1.3
@@ -15,10 +15,7 @@
#define BOOST_INTRUSIVE_CIRCULAR_SLIST_ALGORITHMS_HPP
#include <boost/intrusive/detail/config_begin.hpp>
-#include <iterator>
-#include <boost/assert.hpp>
#include <boost/intrusive/intrusive_fwd.hpp>
-#include <boost/intrusive/detail/pointer_to_other.hpp>
#include <cstddef>
namespace boost {
@@ -202,7 +199,8 @@
//! <b>Throws</b>: Nothing.
static void link_after(node_ptr prev_node, node_ptr this_node)
{
- NodeTraits::set_next(this_node, NodeTraits::get_next(prev_node));
+ node_ptr this_nxt = NodeTraits::get_next(prev_node);
+ NodeTraits::set_next(this_node, this_nxt);
NodeTraits::set_next(prev_node, this_node);
}
Index: hashtable.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/intrusive/hashtable.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- hashtable.hpp 12 May 2007 12:52:31 -0000 1.2
+++ hashtable.hpp 23 May 2007 16:07:02 -0000 1.3
@@ -15,7 +15,6 @@
#include <boost/intrusive/detail/config_begin.hpp>
//std C++
#include <functional>
-#include <iterator>
#include <utility>
#include <algorithm>
//boost
@@ -33,7 +32,6 @@
#include <boost/intrusive/unordered_set_hook.hpp>
#include <boost/intrusive/slist.hpp>
#include <cstddef>
-#include <iterator>
namespace boost {
namespace intrusive {
Index: rbtree_algorithms.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/intrusive/rbtree_algorithms.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- rbtree_algorithms.hpp 12 May 2007 12:52:31 -0000 1.2
+++ rbtree_algorithms.hpp 23 May 2007 16:07:02 -0000 1.3
@@ -40,11 +40,8 @@
#define BOOST_INTRUSIVE_RBTREE_ALGORITHMS_HPP
#include <boost/intrusive/detail/config_begin.hpp>
-#include <iterator>
#include <boost/assert.hpp>
#include <boost/intrusive/intrusive_fwd.hpp>
-#include <boost/intrusive/detail/pointer_to_other.hpp>
-#include <boost/type_traits/alignment_of.hpp>
#include <cstddef>
#include <boost/detail/no_exceptions_support.hpp>
#include <boost/interprocess/detail/utilities.hpp>
@@ -66,7 +63,7 @@
//!
//! (2) when a node being deleted has two children its successor node is
//! relinked into its place, rather than copied, so that the only
-//! iterators invalidated are those referring to the deleted node.
+//! pointers invalidated are those referring to the deleted node.
//!
//! rbtree_algorithms is configured with a NodeTraits class, which capsulates
the
//! information about the node to be manipulated. NodeTraits must support the
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs