Daniel James
b4e1d32e85
Unordered: detab.
...
[SVN r72906]
2011-07-04 21:55:40 +00:00
Daniel James
ff66f79721
Unordered: Import functions into boost namespace.
...
[SVN r72905]
2011-07-04 21:52:17 +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
4777eaf367
Unordered: remove some dead, bad code.
...
[SVN r72390]
2011-06-04 16:15:27 +00:00
Daniel James
a40422fada
Unordered: remove use of the 'or' keyword.
...
[SVN r71602]
2011-04-29 11:03:29 +00:00
Daniel James
b1912055a9
Unordered: Fix some errors in the equality tests.
...
[SVN r71363]
2011-04-17 21:27:38 +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
3fd5635d7d
Unordered: Fix some overly strict tests.
...
[SVN r70443]
2011-03-23 00:07:17 +00:00
Daniel James
d9c49a6cde
Don't require explicit conversion in pairs in unordered's insert tests.
...
In the draft standard the std::pair constructor from another pair is
only considered when overloading if both members are implicitly
constructible to their corresponding members. This breaks one of the
unordered tests which required an explicit conversion, so change it to
only require an implicit conversion.
[SVN r70028]
2011-03-16 21:34:08 +00:00
Daniel James
8ade57b9e3
Remove workaround for ancient gcc verisons.
...
[SVN r70027]
2011-03-16 21:33:41 +00:00
Daniel James
147181530d
Add copy constructors and assignment operators when using rvalue references. Fixes #5119 .
...
[SVN r69469]
2011-03-02 08:47:34 +00:00
Daniel James
a4750fbdba
Make unnecessary_copy_tests a bit more lenient.
...
I'm not sure if those extra moves are avoidable, but I'll allow them for
now. They shouldn't hurt much.
[SVN r68446]
2011-01-25 20:15:27 +00:00
Daniel James
a33949a0a5
Add copy constructors and assignment operators when using rvalue references. Refs #5119 .
...
[SVN r68445]
2011-01-25 20:13:43 +00:00
Daniel James
54f9626c12
Merge unordered from trunk.
...
- Avoid using operator& with the value type.
- More comments in headers.
- Remove old clang workaround.
- Adjust use of inline to make Borland a little happier.
- Avoid `-Wconversion` warnings.
[SVN r67663]
2011-01-04 23:05:55 +00:00
Daniel James
4d57147c3d
Fix tabs and files without copyright.
...
[SVN r67612]
2011-01-03 12:43:34 +00:00
Daniel James
3d7abd9cbe
Avoid -Wconversion
warnings in unordered & hash.
...
[SVN r67170]
2010-12-11 14:43:00 +00:00
Daniel James
5a81ca6ffe
Import boostbook/quickbook in unordered and hash docs.
...
[SVN r67091]
2010-12-07 20:45:08 +00:00
Daniel James
b9188caf7d
Fix [66556] - Remove clang workaround.
...
I accidentaly removed the good code and left the workaround in. Also, a
correction to the comment: I think bug was only in a unreleased version
of clang.
[SVN r66567]
2010-11-14 11:43:49 +00:00
Daniel James
df726c038f
Remove some 'always_show_run_output' flags.
...
[SVN r66566]
2010-11-14 11:42:58 +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
2c1a8894cb
Remove clang workaround.
...
Clang from llvm 2.8 doesn't need it. Clang form llvm 2.7 isn't
supported.
[SVN r66556]
2010-11-13 12:30:45 +00:00
Daniel James
a49c76c69c
More comments describing the unordered internals.
...
And fix a couple of small mistakes in the existing comments.
[SVN r66555]
2010-11-13 12:30:06 +00:00
Daniel James
eb04f68351
Call forward declared functions from templates in unordered tests.
...
Borland is having some issues with the existing tests, since they call
inline functions before they're defined. It might be right to, although
all the other compilers are fine with it. But the test isn't really what
the forward headers are intended for. Try to make the tests better
represent the intent, and possibly work on Borland.
[SVN r66428]
2010-11-07 14:43:50 +00:00
Daniel James
77bd36d038
Declare inline functions as inline.
...
[SVN r66193]
2010-10-25 21:59:52 +00:00
Daniel James
dc8e65043b
Merge fix for unordered container insertion bug.
...
[SVN r66151]
2010-10-23 12:02:18 +00:00
Daniel James
1b85f812af
Missing copy_iterator methods.
...
[SVN r66137]
2010-10-21 20:34:39 +00:00
Daniel James
daad24388c
Fix iterator insert bug in unordered_set/unordered_map.
...
[SVN r66136]
2010-10-21 20:23:37 +00:00
Daniel James
8b4c480d47
Merge unordered build and documentation tweaks.
...
[SVN r63503]
2010-07-01 21:42:52 +00:00
Daniel James
0cbd02d3cc
Fix images in standalone unordered documentation.
...
[SVN r63451]
2010-06-30 12:05:36 +00:00
Daniel James
3a13ddb4a3
Don't use _GLIBCXX_DEBUG on darwin.
...
It isn't supported by Apple's gcc 4.2.
[SVN r63449]
2010-06-30 12:04:41 +00:00
Daniel James
7b272c85d5
Missing bracket.
...
[SVN r63392]
2010-06-27 16:58:48 +00:00
Daniel James
70ca44b503
Merge unordered.
...
[SVN r62610]
2010-06-08 23:23:43 +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
076e195cac
Define several methods inline.
...
Sun 5.9 was having some issues.
[SVN r61831]
2010-05-06 20:13:25 +00:00
Daniel James
71a8e56ae3
Move equivalent and unique hash tables into their own headers.
...
[SVN r61830]
2010-05-06 20:12:40 +00:00
Daniel James
795d9f0aa7
Support for clang.
...
[SVN r61640]
2010-04-28 08:23:41 +00:00
Daniel James
ef79fea0b7
The clang workaround broke some compilers, so only use it for clang.
...
[SVN r61529]
2010-04-24 12:59:35 +00:00
Daniel James
ea33b5d134
Fix clang warnings in unordered tests.
...
[SVN r61505]
2010-04-23 07:26:43 +00:00
Daniel James
5bab4d4360
Work around friend
bug in clang.
...
[SVN r61504]
2010-04-23 07:25:53 +00:00
Daniel James
ec97640b1b
Merge some link fixes and release notes.
...
[SVN r61474]
2010-04-21 23:00:35 +00:00
Daniel James
10e24f93c4
Unordered/hash release notes.
...
[SVN r61356]
2010-04-18 13:20:45 +00:00
Daniel James
d3ca85bdbd
Merge throw_exception use in unordered.
...
[SVN r61063]
2010-04-05 08:08:25 +00:00
Daniel James
00cebc3dfb
Use boost::throw_exception in unordered.
...
[SVN r60983]
2010-03-31 21:42:08 +00:00
Daniel James
fe2a6c521b
Merge from trunk.
...
- Add `quick_erase` for unordered. `erase_return_void` is now deprecated.
Fixes #3966
- Avoid collision between 0 and 0.5. Fixes #4038
[SVN r60980]
2010-03-31 21:39:07 +00:00
Daniel James
ee034e23bb
Add quick_erase to the unordered containers. Refs #3966 .
...
[SVN r60754]
2010-03-22 00:42:07 +00:00