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
eced4266c2
Unordered: Copy and assign using Boost.Move.
...
[SVN r73503]
2011-08-03 08:34:33 +00:00
Daniel James
8b610a6d34
Unordered: Work around for compilers which don't support template friend members.
...
[SVN r72523]
2011-06-09 19:48:34 +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
e8714d79b2
Unordered: Implement C++0x equality.
...
[SVN r71354]
2011-04-17 16:23:25 +00:00
Daniel James
f8e2a917f9
Unordered: 2 phase lookup fix for clang.
...
[SVN r71352]
2011-04-17 14:27:08 +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
5edc45349f
Revert changes for sun 5.9.
...
Nobody seems to be running the tests now.
[SVN r62117]
2010-05-21 07:06:33 +00:00
Daniel James
dfaa61b666
Another inline.
...
[SVN r61872]
2010-05-09 07:24:47 +00:00
Daniel James
00cebc3dfb
Use boost::throw_exception in unordered.
...
[SVN r60983]
2010-03-31 21:42:08 +00:00
Daniel James
b99382b551
Add templated find overload for compatible keys.
...
[SVN r58405]
2009-12-15 22:53:33 +00:00
Daniel James
4e6292b439
Implement an alternative erase function that doesn't return an iterator.
...
Ref #3693
[SVN r58403]
2009-12-15 22:52:52 +00:00
Daniel James
df72c4886f
Support incomplete template parameters to unordered containers.
...
[SVN r57798]
2009-11-20 08:03:26 +00:00
Daniel James
26c72f9860
Use 'E' for key extractor, freeing 'K' for key.
...
[SVN r57797]
2009-11-20 08:02:48 +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
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
f76af2d0c8
Another std::max.
...
[SVN r56362]
2009-09-22 22:39:00 +00:00
Daniel James
efbf13685e
Use std::max.
...
[SVN r56349]
2009-09-21 21:18:21 +00:00
Daniel James
08d533cb88
Fix a bug that was causing unnecessary rehahes.
...
[SVN r56348]
2009-09-21 21:18:01 +00:00
Daniel James
ff6e457651
Fix bug where container was reducing the number of buckets.
...
[SVN r56347]
2009-09-21 21:17:40 +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
Daniel James
7fe53ef5a3
Combine hash_structure and hash_table_manager.
...
[SVN r55990]
2009-09-03 07:36:21 +00:00
Daniel James
386d9f28d7
Initial checkin of new version of Boost.Unordered.
...
- More template use, less preprocessor use.
- Removed some of the Visual C++ 6 workarounds.
- Reduced memory use of the main object.
- Split into smaller headers.
[SVN r55878]
2009-08-30 16:42:28 +00:00