Andrey Semashev
e446c6e05c
Added indirect_reference_t alias.
2025-02-07 13:36:40 +03:00
Andrey Semashev
bcf94f9e5d
Removed MPL usage from pointee and indirect_reference.
2025-01-26 17:57:47 +03:00
Georgy Guminov
f9effffb6d
Mostly remove pre-CXX11 workarounds.
...
С++03 support was deprecated in 1.85 and now can be removed. This PR clears
many of workarounds, which are no longer needed now.
* Remove unused workaround macros (many of).
* Remove BOOST_STATIC_ASSERT usages.
* Minimize Boost::type_traits dependency (in favour of STL's type_traits).
Closes https://github.com/boostorg/iterator/pull/82 .
Squashed commit of the following:
commit 741a627b736ba81fe0054e5bf373141b04a8a597
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sat Jan 25 12:13:05 2025 +0300
Replace testers with standard metafunctions.
commit bf4cce611454713f1c8e5f46a2c3e599c548656d
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sat Jan 25 11:51:32 2025 +0300
Refactor is_lvalue_iterator.hpp.
commit 8d080c6c58726269cf55aedd64aa239f7d098fc7
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sat Jan 25 10:27:32 2025 +0300
Remove more workarounds.
commit 5a4ba24d361ac0676d2cce95fdff22824ecdc287
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sun Jan 19 16:38:30 2025 +0300
Fixes.
commit fdfafce2b9a71b1d85cbc697983652788f1c4bb7
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sat Oct 26 15:06:43 2024 +0300
Remove BOOST_NO_STRICT_ITERATOR_INTEROPERABILITY
Correct static_assert messages.
Fix messages & replace is_standard_layout with is_copy_constructible.
commit c69ac1408af2fe5a105b288644367bbb6e0bc30d
Author: Georgy Guminov <gogagum@gmail.com>
Date: Sat Oct 26 14:48:51 2024 +0300
Correct static_assert messages.
commit b5df827151a6d752168a59fa8c20c9ffd3766c0b
Author: Georqy Guminov <gogagum@gmail.com>
Date: Sun Jun 23 16:12:29 2024 +0300
Fixes. Remove some Boost.MPL usages. Remove unused includes.
commit 01fd35e9f87d43f4bb46ed525a0e8eec46cba44a
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Wed Jun 12 17:14:21 2024 +0300
abstract conjunction.
commit c02def8acf68e0829082761d26955320974e5078
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Wed Jun 12 16:35:43 2024 +0300
return addressof & conjunction.
commit 3b3d1625752cbe8c9ec62662e594a1af1fd9a458
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Wed Jun 12 16:30:44 2024 +0300
Make macro more readable.
commit 4ab19e045fc535dc80228062d11bb6584ccd17ff
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Wed Jun 12 15:56:49 2024 +0300
Add static_assert messages.
commit 82b5c44cd34435d63af5cdbc7fcc1b07b39394de
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Wed Jun 12 14:12:10 2024 +0300
Return is iterator CXX17 test.
commit 2d58d65462e837430a0990c2a414d5c397e9fa31
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Tue Jun 11 14:04:17 2024 +0300
Omitted.
commit a0d04d9491de818df990188436e04afc3ddba3ad
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Tue Jun 11 14:00:35 2024 +0300
Replace move with static_cast
commit 4a49b8a1a2d44d2da728dd064fe810ca86d8d1fd
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Mon Jun 10 21:38:53 2024 +0300
Return BOOST_NOEXCEPT
commit 054c013bba75c42710537a819de91d6abfe25658
Author: Georgiy Guminov <gogagum@gmail.com>
Date: Sun Jun 9 15:20:41 2024 +0300
CXX11
2025-01-26 15:21:16 +03:00
Andrey Semashev
dc96d371fa
Moved most components of the library to iterators:: namespace.
...
This change excludes boost:: and boost::detail:: namespaces from ADL for unqualified function calls (e.g. algorithms). This reduces the possibility of name clashes with other libraries and user's code. One of the effects should be fixing test failures on gcc 4.2 and 4.4 due to clashed with Boost.TypeTraits.
Also some of the functions marked with inline keyword.
2014-07-03 00:22:45 +04: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