Commit Graph

985 Commits

Author SHA1 Message Date
Dave Abrahams
e6babb8bf9 Kill off outer cv-stripping of Dereferenceable
[SVN r21696]
2014-06-05 01:34:12 +03:00
Dave Abrahams
84cd6e1be4 Updated pointee and indirect_reference so that pointee represents the immutability of the pointed-to type via const qualification. The pointee of a proxy-based iterator will be const qualified unless a mutable reference to the value_type can be bound to the returned proxy.
Added a test for pointee

Fixed iterator_facade so operator[] result type computation didn't
cause a problem with abstract types.

Updated iterator_facade operator[] docs for accuracy.

Allowed Borland to simply fail the indirect_iterator_member_types test
because of its lame const-dropping, instead of trying to work around
it.

[SVN r21579]
2014-06-05 01:34:12 +03:00
Dave Abrahams
2325b6070a Added traits:
is_incrementable.hpp: checks whether ++x is well-formed

   pointee.hpp: value_type of iterators or smart pointers

   indirect_reference.hpp: reference type of iterators or smart pointers

indirect_iterator.hpp
indirect_iterator_member_types.cpp

   Use pointee/indirect_reference to select value/reference type.

iterator_concepts.hpp: Fixed interoperable test.  Hardly tests enough, but it's a start

minimum_category.hpp: Better error messages for vc6

indirect_iterator_test.cpp: Workarounds for compilers without SFINAE

static_assert_same.hpp: Informative error reports; added a macro.

zip_iterator_test.hpp: Added missing #include

Jamfile: made zip_iterator test pass with vc6/stlport

[SVN r21514]
2014-06-05 01:34:11 +03:00
Andrey Semashev
91b2854e4a Removed executable attribute. 2014-06-05 01:33:57 +03:00
Peter Dimov
27b44876bc Link to documentation added.
[SVN r27745]
2014-06-05 01:33:56 +03:00
Aleksey Gurtovoy
123bf514ac merge new MPL version from 'mplbook' branch
[SVN r24874]
2014-06-05 01:33:56 +03:00
Dave Abrahams
ac7b14253f Kill off outer cv-stripping of Dereferenceable
[SVN r21696]
2014-06-05 01:33:55 +03:00
Dave Abrahams
69df402f70 Updated pointee and indirect_reference so that pointee represents the immutability of the pointed-to type via const qualification. The pointee of a proxy-based iterator will be const qualified unless a mutable reference to the value_type can be bound to the returned proxy.
Added a test for pointee

Fixed iterator_facade so operator[] result type computation didn't
cause a problem with abstract types.

Updated iterator_facade operator[] docs for accuracy.

Allowed Borland to simply fail the indirect_iterator_member_types test
because of its lame const-dropping, instead of trying to work around
it.

[SVN r21579]
2014-06-05 01:33:55 +03:00
Dave Abrahams
e600d3f65b Added traits:
is_incrementable.hpp: checks whether ++x is well-formed

   pointee.hpp: value_type of iterators or smart pointers

   indirect_reference.hpp: reference type of iterators or smart pointers

indirect_iterator.hpp
indirect_iterator_member_types.cpp

   Use pointee/indirect_reference to select value/reference type.

iterator_concepts.hpp: Fixed interoperable test.  Hardly tests enough, but it's a start

minimum_category.hpp: Better error messages for vc6

indirect_iterator_test.cpp: Workarounds for compilers without SFINAE

static_assert_same.hpp: Informative error reports; added a macro.

zip_iterator_test.hpp: Added missing #include

Jamfile: made zip_iterator test pass with vc6/stlport

[SVN r21514]
2014-06-05 01:33:54 +03:00
Peter Dimov
f6e5aa2462 Merge branch 'develop' 2014-06-05 01:16:50 +03:00
John Maddock
21102938e8 Remove all references to now defunct (and removed) header.
[SVN r86438]
2014-06-05 01:16:01 +03:00
Stephen Kelly
a1c0cf8373 Remove use of obsolete BOOST_TT_BROKEN_COMPILER_SPEC
[SVN r86250]
2014-06-05 01:15:17 +03:00
Stephen Kelly
220a11883c Remove remaining occurances of BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
These evaded scripting.

[SVN r86249]
2014-06-05 01:14:58 +03:00
Stephen Kelly
913df78ec0 Simplify multi-component ifdefs containing BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
[SVN r86248]
2014-06-05 01:14:37 +03:00
Stephen Kelly
01f9b396d8 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifdef...#else...#endif blocks.

[SVN r86246]
2014-06-05 01:14:14 +03:00
Stephen Kelly
67d418a5c6 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifndef...#endif conditions.

[SVN r86244]
2014-06-05 01:13:55 +03:00
Stephen Kelly
d853e444ce Iterator: Remove obsolete MSVC version checks.
[SVN r86082]
2014-06-05 01:13:31 +03:00
Stephen Kelly
e6d5c24b91 Remove use of BOOST_ITERATOR_CATEGORY
[SVN r86056]
2014-06-05 01:13:14 +03:00
Stephen Kelly
98db5b4f9a Iterator: Remove obsolete GCC version check.
[SVN r86055]
2014-06-05 01:13:00 +03:00
Stephen Kelly
739c95411f Iterator: Remove use of eti baseclass workaround.
[SVN r85940]
2014-06-05 01:12:47 +03:00
Jeffrey Lee Hellrung, Jr
8ce330a111 refs #6403
[SVN r80903]
2014-06-05 01:12:20 +03:00
Jeffrey Lee Hellrung, Jr
3eef8090d6 refs #6404
[SVN r80902]
2014-06-05 01:12:07 +03:00
Jeffrey Lee Hellrung, Jr
d291c7b43e - BREAKING CHANGE: iterator_facade::pointer now corresponds to the actual result of iterator_facade::operator-> rather than Value*. This required an adjustment to a test.
- The logic for determining the result of iterator_facade::operator[] has been factored out into a separate detail header in preparation for its potential use in iterator_range to avoid iterator_range::operator[] from returning a reference to a temporary.

[SVN r80901]
2014-06-05 01:11:49 +03:00
Peter Dimov
1471102bfc Removed development/ that was only in develop and probably a relic. 2014-06-05 01:06:32 +03:00
Daniel James
2e099caceb Create merge base for git. 2014-06-01 19:15:17 +01:00
Michel Morin
3fd1c34411 Merge r86524 (Correct broken links to C++ standard papers); fixes #9212
[SVN r86673]
2013-11-13 03:22:55 +00:00
Michel Morin
dec42098db Correct broken links to C++ standard papers. Refs #9212.
[SVN r86524]
2013-10-30 12:51:24 +00:00
John Maddock
d4d51389d1 Remove all references to now defunct (and removed) header.
[SVN r86438]
2013-10-26 10:13:38 +00:00
Stephen Kelly
4a82a5646f Remove use of obsolete BOOST_TT_BROKEN_COMPILER_SPEC
[SVN r86250]
2013-10-11 23:23:26 +00:00
Stephen Kelly
fecf28a440 Remove remaining occurances of BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
These evaded scripting.

[SVN r86249]
2013-10-11 23:22:36 +00:00
Stephen Kelly
bc34e54f6c Simplify multi-component ifdefs containing BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
[SVN r86248]
2013-10-11 23:20:59 +00:00
Stephen Kelly
f543f1e7b6 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifdef...#else...#endif blocks.

[SVN r86246]
2013-10-11 23:19:17 +00:00
Stephen Kelly
9f661c9112 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifndef...#endif conditions.

[SVN r86244]
2013-10-11 23:15:00 +00:00
Stephen Kelly
04bc178fc1 Iterator: Remove obsolete MSVC version checks.
[SVN r86082]
2013-09-30 16:04:19 +00:00
Stephen Kelly
1b2fbfaaca Remove use of BOOST_ITERATOR_CATEGORY
[SVN r86056]
2013-09-30 15:54:32 +00:00
Stephen Kelly
a6a8fd00d7 Iterator: Remove obsolete GCC version check.
[SVN r86055]
2013-09-30 15:54:03 +00:00
Stephen Kelly
30a13b8141 Iterator: Remove use of eti baseclass workaround.
[SVN r85940]
2013-09-26 09:43:37 +00:00
Jeffrey Lee Hellrung, Jr.
db29a874f1 refs #6403
[SVN r80903]
2012-10-08 03:22:45 +00:00
Jeffrey Lee Hellrung, Jr.
8345293f94 refs #6404
[SVN r80902]
2012-10-08 02:17:55 +00:00
Jeffrey Lee Hellrung, Jr.
512298cb5c - BREAKING CHANGE: iterator_facade::pointer now corresponds to the actual result of iterator_facade::operator-> rather than Value*. This required an adjustment to a test.
- The logic for determining the result of iterator_facade::operator[] has been factored out into a separate detail header in preparation for its potential use in iterator_range to avoid iterator_range::operator[] from returning a reference to a temporary.

[SVN r80901]
2012-10-08 02:02:09 +00:00
Jeffrey Lee Hellrung, Jr.
6d0b2d4f8a Merging trunk to release; fixing typo in comments of iterator_facade.
[SVN r80818]
2012-10-02 13:30:46 +00:00
Jeffrey Lee Hellrung, Jr.
7dbd0f5a89 Fixing typos in comments of iterator_facade.
[SVN r80817]
2012-10-02 13:27:34 +00:00
Jeffrey Lee Hellrung, Jr.
c9463e941f Merging boost/iterator from trunk to release (usability improvement after latest fix to function_input_iterator).
[SVN r80813]
2012-10-02 01:14:36 +00:00
Jeffrey Lee Hellrung, Jr.
1ce1296320 Extending the usability of function_input_iterator after the changes addressing #5825: a dereference before each increment is no longer required.
[SVN r80790]
2012-09-30 18:58:56 +00:00
Jeffrey Lee Hellrung, Jr.
9025bbfc2a Merging boost/iterator and libs/iterator trunk to release.
[SVN r80568]
2012-09-18 02:50:52 +00:00
Jeffrey Lee Hellrung, Jr.
c6f3269f4a updating documentation to reflect new and more sensible behavior
[SVN r80468]
2012-09-09 15:51:22 +00:00
Jeffrey Lee Hellrung, Jr.
31c3971720 fix #5825; fix #7194
[SVN r80467]
2012-09-09 15:33:12 +00:00
Dave Abrahams
2db78eec90 Replace all uses of boost/utility.hpp with more-granular includes. Solves modularization dependency nightmare.
[SVN r78502]
2012-05-18 04:44:04 +00:00
Jeffrey Lee Hellrung, Jr.
c7fc3470d0 merging from trunk; fix #5127 from M. Morin; fix for refs #5697
[SVN r78184]
2012-04-24 21:28:07 +00:00
Jeffrey Lee Hellrung, Jr.
ad90dac61d refs #5127 applying Michael Morin's patch for transform_iterator to trunk
[SVN r78121]
2012-04-22 01:27:49 +00:00