41 Commits
Author SHA1 Message Date
Ion Gaztañaga 05bb58091e Add experimental fastmod_buckets option 2022-06-13 00:42:58 +02:00
Ion Gaztañaga 3c5c8cec3f Rewritten hash semi-intrusive containers to improve compilation times and runtime performance. Added experimental "linear_buckets" option. 2022-05-04 23:36:34 +02:00
Ion Gaztañaga 01b4f6264c Take all pointers by value to avoid aliasing issues in release mode 2021-12-29 14:02:03 +01:00
Ion Gaztañaga a633906847 Fixes #59 ("Add noexcept support to the library"). 2021-04-19 11:17:48 +02:00
Ion Gaztañaga 215ef2617e Fix #34 ("-Wdeprecated-copy on gcc9) 2019-03-05 11:26:29 +01:00
Ion Gaztañaga 3618260489 fix GitHub Issue #35 ("key_of_value on treap_set seems to be broken in 1.69") 2019-02-12 00:23:56 +01:00
Ion Gaztañaga 018a39c433 Use directly boost::movelib::pointer_element/to_raw_pointer 2017-04-07 16:05:44 +02:00
Ion Gaztañaga 5c9f2d04cb Add missing forceinlines 2016-11-12 19:02:46 +01:00
Ion Gaztañaga 6a9fa390ae Introduced BOOST_INTRUSIVE_FORCEINLINE, disabled by default until it's more tested 2015-12-24 10:29:09 +01: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 667ec0bdfc Make sure boost/config.hpp is included before pragma once. 2015-02-01 23:15:14 +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 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 7ae11c3444 Header dependency cleanup. Removed some standard includes, splitted large "utilities" headers, and minimized algorithm dependencies. 2014-10-04 07:55:02 +02:00
Ion Gaztañaga 1f24efd1ed Implemented N3644 (Null Forward Iterators) 2014-09-24 15:28:44 +02:00
Ion Gaztañaga f6333c3126 Replaced tabs with spaces. Removed unneeded TTI include in utilities 2014-08-01 10:58:30 +02:00
Ion Gaztañaga 563eca32de Added support for node and value pointers non-convertible from raw references 2014-06-12 11:49:42 +02:00
Ion Gaztañaga 29aa25d8e9 * Deleted dependencies with <boost/pointer_cast.hpp> and <boost/pointer_to_other.hpp>. pointer_traits is used to obtain pointer-related types and operations.
* Added examples for derivation_value_traits and member_value_traits and updated configuration.
2014-06-05 23:35:43 +02:00
Ion Gaztañaga 6c623e8d16 Fixed #8468. Added 64 bit prime values. 2014-03-18 17:06:38 +01:00
Ion Gaztañaga 4f60ed75b5 Fix MSVC-8.0 iterator sizes avoiding derivation from std::iterator_traits 2014-02-08 09:17:37 +01:00
Ion Gaztañaga 2ffe6b2f82 Fixed ABI regression introduced in Boost 1.55 2014-01-30 14:22:04 +01:00
Ion Gaztañaga fbd8e26461 * Big refactoring in order to reduce template and debug symbol bloat.
* Fixes #8698
* Implemented SCARY iterators

[SVN r85165]
2013-07-28 22:10:37 +00:00
Ion Gaztañaga 30215558ae Updated copyright and fixed trailing whitespaces
[SVN r79434]
2012-07-12 07:15:40 +00:00
Ion Gaztañaga ad82973cc5 Trailing whitespaces
[SVN r78517]
2012-05-20 09:57:59 +00:00
Ion Gaztañaga 8a53a5af27 Introducing allocator_traits and pointer_traits changes into several libraries.
[SVN r76106]
2011-12-22 20:08:24 +00:00
Ion Gaztañaga 514e48a9d3 Added experimental move semantics to containers. Undocumented
[SVN r70299]
2011-03-21 08:58:28 +00:00
Ion Gaztañaga 4df2673851 More changes for Boost 1.45
[SVN r64985]
2010-08-24 17:26:36 +00:00
Ion Gaztañaga 90d4ec5289 Interprocess:
[@https://svn.boost.org/trac/boost/ticket/3439 #3439],
  [@https://svn.boost.org/trac/boost/ticket/3846 #3846],
  [@https://svn.boost.org/trac/boost/ticket/3947 #3947],
  [@https://svn.boost.org/trac/boost/ticket/3985 #3985].
Intrusive:
  [@https://svn.boost.org/trac/boost/ticket/3668 #3668],
  [@https://svn.boost.org/trac/boost/ticket/3339 #3688],
  [@https://svn.boost.org/trac/boost/ticket/3698 #3698],
  [@https://svn.boost.org/trac/boost/ticket/3706 #3706],
  [@https://svn.boost.org/trac/boost/ticket/3721 #3721].
  [@https://svn.boost.org/trac/boost/ticket/3729 #3729],
  [@https://svn.boost.org/trac/boost/ticket/3746 #3746],
  [@https://svn.boost.org/trac/boost/ticket/3781 #3781],
  [@https://svn.boost.org/trac/boost/ticket/3829 #3829],
  [@https://svn.boost.org/trac/boost/ticket/3840 #3840],
  [@https://svn.boost.org/trac/boost/ticket/3339 #3339],
  [@https://svn.boost.org/trac/boost/ticket/3419 #3419],
  [@https://svn.boost.org/trac/boost/ticket/3431 #3431],

[SVN r60514]
2010-03-12 13:18:29 +00:00
Ion Gaztañaga 8c6f93eae0 Fixes for 1.41
[SVN r56817]
2009-10-14 11:59:32 +00:00
Ion Gaztañaga 119fb288ff * New treap-based containers: treap, treap_set, treap_multiset.
*  Corrected compilation bug for Windows-based 64 bit compilers.
*  Corrected exception-safety bugs in container constructors.
*  Updated documentation to show rvalue-references funcions instead of emulation functions.

[SVN r50261]
2008-12-13 13:56:15 +00:00
Ion Gaztañaga a60ea9d474 gcc 4.3 fixes for normal and -std=c++0x modes
[SVN r46571]
2008-06-21 09:04:21 +00:00
Ion Gaztañaga 7e50778757 Intrusive:
*  Added `linear<>` and `cache_last<>` options to singly linked lists.
*  Added `optimize_multikey<>` option to unordered container hooks.
*  Optimized unordered containers when `store_hash` option is used in the hook.
*  Implementation changed to be exception agnostic so that it can be used
   in environments without exceptions.
*  Added `container_from_iterator` function to tree-based containers.

Interprocess:

*  Added anonymous shared memory for UNIX systems.
*  Fixed file lock compilation errors

[SVN r44819]
2008-04-27 15:03:06 +00:00
Ion Gaztañaga 0200c03792 Fixed assignment operator
[SVN r40060]
2007-10-15 16:57:15 +00:00
Ion Gaztañaga 2ddf5b904b Changes introduced by the new intrusive version.
[SVN r39548]
2007-09-26 15:26:35 +00:00
Ion Gaztañaga 7be768cf8e no message
[SVN r38075]
2007-06-23 13:01:38 +00:00
Ion Gaztañaga 4b48e69a82 Compilation times improvements
[SVN r37749]
2007-05-23 16:07:03 +00:00
Ion Gaztañaga 3c84ecf0e1 Changes to correct regression tests for intel-win-9.1 & cw-9.4
[SVN r37676]
2007-05-12 12:54:15 +00:00
Ion Gaztañaga fe23901b24 First inclusion
[SVN r37592]
2007-05-04 21:22:02 +00:00