Commit Graph
220 Commits
Author SHA1 Message Date
Ion Gaztañaga cc9f99fc78 Added sanity debug checks to insert_unique_commit 2015-09-07 18:27:29 +02:00
Ion Gaztañaga 7c36efbaa9 Added assignment and explicit copy constructor 2015-09-07 18:26:53 +02:00
Ion Gaztañaga 1e4a830323 Added move semantics to ebo_functor_holder 2015-09-07 18:25:36 +02:00
Ion Gaztañaga 79272de8ba Added is_pow2/static_is_pow2/ceil_pow2/previous_or_equal_pow2 2015-09-07 18:25:08 +02:00
Ion Gaztañaga 0f2714b8e8 BOOST_INTRUSIVE_MSVC_ABI_PTR_TO_MEMBER was incorrectly undefined so no virtual inheritance was tested in compilers that theoretically support it. 2015-09-07 18:24:16 +02:00
Ion Gaztañaga 3587a6f470 Fix bug that could lead to uninitialized memory reads and rare errors when cloning 2015-06-09 14:24:00 +02:00
Ion Gaztañaga ebf117f1ff Support clang with gcc in std predeclarations 2015-06-09 14:22:57 +02:00
Ion Gaztañaga 51de75799b - Implemented map and multimap-like interfaces.
-  Refactored hashtable containers to reduce template instantiations.
2015-06-04 11:16:21 +02:00
Ion Gaztañaga 0b5ebe6cdd Make some typedefs private instead of protected (these iterators are not designed to be base classes). 2015-04-14 14:58:11 +02:00
Ion Gaztañaga 9e326ac254 Use iterator_arrow_result to support raw pointers as iterators. 2015-04-14 14:57:33 +02:00
Ion Gaztañaga eebabce934 Avoid inheritance 2015-04-14 14:56:38 +02:00
Ion Gaztañaga bb95a6f8cf Avoid unused variables warnings in release mode 2015-04-14 14:56:07 +02:00
Ion Gaztañaga 1e4b94b32a Add iterator_arrow_result utility 2015-04-14 14:55:39 +02:00
Ion Gaztañaga 1614d58b74 hashtable_node: change pointer and references types from raw to those specified in value_traits. 2015-04-14 14:54:53 +02:00
Ion Gaztañaga dd385e0ec5 -> Use new Boost.Move meta utilities to avoid compilation errors in old compilers.
-> Implement equality operators as friend functions to make code clearer.
2015-04-12 12:56:04 +02:00
Ion Gaztañaga 1231ddd0e1 Fix error in reverse_iterator::operator[] 2015-04-04 22:53:28 +02:00
Ion Gaztañaga 4f20e7279d Add new clone_from overload to implement move semantics 2015-02-26 00:02:24 +01:00
Ion Gaztañaga b5fd69e628 Add support for GCC versioned std namespaces 2015-02-26 00:00:58 +01:00
Ion Gaztañaga b9aa032d98 any_xxx_node_traits must return pointers by value to avoid aliasing problems, as done long time ago with other traits. 2015-02-02 17:12:18 +01:00
Ion Gaztañaga 667ec0bdfc Make sure boost/config.hpp is included before pragma once. 2015-02-01 23:15:14 +01:00
Ion Gaztañaga ccd980d1f4 Additional checks for red-black trees, make sure root is black and the number of black nodes is equal in the left and right subtrees. 2015-02-01 23:14:27 +01:00
Ion Gaztañaga 10cb0bd206 Fixed "pointed to by pos" with "pointed to by i" 2015-01-19 22:34:52 +01:00
Ion Gaztañaga 2b714f7e04 Remove redundant "struct" keyword 2015-01-14 15:46:54 +01:00
Ion Gaztañaga a55b2d824d Replaced _MSC_VER with BOOST_HAS_PRAGMA_ONCE before #pragma once. 2015-01-10 12:49:46 +01:00
Ion Gaztañaga 7b87a5e7da Removed unused preprocessor.hpp file. 2015-01-08 15:33:19 +01:00
Adam Romanek 07599bd731 Replaced raw rethrow statements with BOOST_RETHROW 2015-01-07 13:45:07 +01:00
Ion Gaztañaga 974bb7b14d Avoid instantiating iterator tags in iterator_advance and iterator_distance, to allow iterators that forward declare tags and avoid including <iterator> 2015-01-04 02:15:44 +01:00
Ion Gaztañaga 614ce1b155 Reduced include dependencies 2015-01-02 18:41:20 +01:00
Ion Gaztañaga 757475e59c Removed trailing spaces. 2015-01-02 18:40:20 +01:00
Ion Gaztañaga 12ee566796 Workaround for bugs #10771 and #6720. 2014-12-17 15:45:05 +01:00
Ion Gaztañaga 281629b94e Fixed wrong comment in bounded_range when lower and upper are equal. 2014-12-15 17:49:05 +01:00
Ion Gaztañaga 50f9f57f6c Documented pointer_traits according to Trac #10853 proposal 2014-12-15 17:39:04 +01:00
Ion Gaztañaga a4f0c0c7b3 Reduced compile-time dependencies, headers, and the use of Boost.Preprocessor, specially for hooks and iterators. 2014-12-08 15:48:08 +01:00
Ion Gaztañaga adda517544 Use of boost::adl_move_swap.
Replaced <algorithm> with <functional> where needed
Added basic equal/lexicographical compare algorithms to avoid complex <algorithm> include and ADL problems in some compilers
2014-11-26 19:32:12 +01:00
Ion Gaztañaga 55a3c8b9a5 Simplified iterator_category expression so that old compilers can parse it. 2014-11-26 07:01:49 +01:00
Ion Gaztañaga 913f903d16 Avoid including <iterator>, use intrusive's own version to avoid ADL clashes and minimize some dependencies. 2014-11-25 18:43:16 +01:00
Ion Gaztañaga 0d86ca5d80 Use of boost::long_long_type to avoid warnings. 2014-11-25 18:39:07 +01:00
Ion Gaztañaga 2c13d5c7d9 Renamed get_less with get_compare 2014-11-09 14:15:14 +01:00
Ion Gaztañaga 446f87f932 Added missing non-const overloads to operator() 2014-11-09 14:14:24 +01:00
Ion Gaztañaga 2839598e85 get_header_holder_type used internally to shorten symbol length. 2014-11-01 19:59:03 +01:00
Ion Gaztañaga 960c85587f Changed default_tag 2014-11-01 19:57:24 +01:00
Ion Gaztañaga 3eff274cb3 Fixed tab spaces 2014-11-01 19:52:03 +01:00
Ion Gaztañaga e957ece332 Removed newline 2014-11-01 19:51:42 +01:00
Ion Gaztañaga 803262ffc8 Added go_left, go_right_, go_parent and bool conversion to tree iterator 2014-11-01 19:51:22 +01:00
Ion Gaztañaga b9ce8b4ac6 More documentation macros 2014-11-01 19:50:49 +01:00
Ion Gaztañaga 414ca9f338 Break options.hpp dependencies, now hooks don't depend on heavy meta-machinery. 2014-10-18 17:02:23 +02:00
Ion Gaztañaga e926491606 Added #pragma once to headers 2014-10-13 22:30:28 +02:00
Ion Gaztañaga a2f5d31ad3 Split detail/utilities.hpp into 11 headers to minimize physical coupling and header dependencies 2014-10-13 21:46:47 +02:00
Ion Gaztañaga d25ae5748e Simplified include dependencies to avoid too many preprocessed source. 2014-10-10 18:21:18 +02:00
Ion Gaztañaga a35a01058a Removed duplicated includes. 2014-10-05 20:11:40 +02:00