Daniel James
fa97494cc8
Unordered: Move some of the unordered implementation.
...
[SVN r73755]
2011-08-14 18:53:03 +00:00
Daniel James
435c21c155
Unordered: Qualify calls to addressof.
...
Hopefully this will fix C++0x compilers. Although I don't have one at
hand to test.
[SVN r73690]
2011-08-12 06:26:25 +00:00
Daniel James
0e5930b8dc
Unordred: Implement propagate_on_container_swap.
...
[SVN r73680]
2011-08-11 21:18:43 +00:00
Daniel James
eacca89d4e
Unordered: Starting to implement allocator propagation.
...
[SVN r73679]
2011-08-11 21:18:19 +00:00
Daniel James
99e6bef4ef
Unordered: Starting to support allocator_traits.
...
[SVN r73678]
2011-08-11 21:17:57 +00:00
Daniel James
f0517463a5
Unordered: Better std::forward/move configuration.
...
[SVN r73592]
2011-08-07 08:55:28 +00:00
Daniel James
eced4266c2
Unordered: Copy and assign using Boost.Move.
...
[SVN r73503]
2011-08-03 08:34:33 +00:00
Daniel James
20e923ba0d
Unordered: Move the implementation into a namespace.
...
Although it typically won't prevent ADL, because of boost::hash.
[SVN r72391]
2011-06-04 16:17:07 +00:00
Daniel James
4777eaf367
Unordered: remove some dead, bad code.
...
[SVN r72390]
2011-06-04 16:15:27 +00:00
Daniel James
140e8852e8
Unordered: fix some gcc issues.
...
[SVN r71346]
2011-04-17 00:31:35 +00:00
Daniel James
547e141166
Unordered: Overhaul the implementation.
...
Store nodes in a single linked list, with hash values so that their
buckets can be found when needed. Iterators now only have to store a
pointer to the node and don't have to iterate over empty buckets to
reach the next node. This allows the container to meet the iterator
requirements - fixing the speed issues with `equal_range` and `erase`.
Also, define iterators in their own namespace, so that they don't
accidentally pull in detail functions via ADL.
I've simplified the code slightly by removing some of the special
cases for empty containers. Renamed a few things as well and other
minor changes that were made as I went along.
[SVN r71327]
2011-04-16 18:47:33 +00:00
Daniel James
14e0e1afc2
Less use of the ampersand operator in unordered.
...
[SVN r66557]
2010-11-13 12:31:54 +00:00
Daniel James
2f0a94bcfd
Add missing std:: qualifier to ptrdiff_t. Refs #3773 .
...
[SVN r58402]
2009-12-15 22:42:04 +00:00
Daniel James
060acb3f25
Slightly rearrange the unordered container headers so that prev_prime is defined before it's used.
...
[SVN r57152]
2009-10-25 10:55:08 +00:00
Daniel James
854dc0b353
Various inspect fixes.
...
[SVN r56603]
2009-10-05 21:29:39 +00:00
Daniel James
373791d0b2
Detab.
...
[SVN r56571]
2009-10-04 10:37:56 +00:00
Daniel James
fe3d612fe0
Clean up some unordered TODOs.
...
[SVN r56570]
2009-10-04 10:37:36 +00:00
Daniel James
965c2ae89c
Slightly more consistent variable names. In detail 'n' is now always a node pointer.
...
[SVN r56346]
2009-09-21 21:17:19 +00:00
Daniel James
78b078f41d
Since all the compilers support out of line template members use them
...
and lots of other things.
[SVN r56329]
2009-09-20 21:55:15 +00:00
Daniel James
491fa330f6
Move size_ and cached_begin_bucket_ into table, rename hash_table_manager hash_buckets.
...
[SVN r56010]
2009-09-04 07:03:04 +00:00