Dirk Stolle
75a9a7d812
Remove executable flag from CMakeLists.txt
...
See <https://github.com/boostorg/admin/issues/47 > for more info.
[ci skip]
2025-02-16 12:49:20 -06:00
Rene Rivera
12f2b68504
Change all <source> references to <library>.
2024-09-27 18:46:58 -05:00
Rene Rivera
3acffbf46b
Add missing import-search for cconfig/predef checks.
2024-09-27 18:46:58 -05:00
Rene Rivera
9bb6e49f82
Make the library modular usable.
2024-09-27 18:46:58 -05:00
Zach Laine
1f7fb19002
Change the __GNUC__ >= 11 && __GNUC_MINOR__ >= 3 expression in one of the
...
tests to __GNUC__ == 11 && ...; the workaround is not needed for GCC 12.
2023-09-05 21:01:17 -05:00
Zach Laine
df9e186bd6
Add a new v3 namespace, containing a new iterator_interface based on deducing
...
this instead of CRTP.
2023-06-05 00:12:54 -05:00
Zach Laine
c022029c27
In C++20 and later, return void from operator++(int), for input_iterators.
...
This matches the requirements of the std::input_iterator concept. This is not
done in earlier C++ versions, because it completely breaks use of input
iterators with the standard algorithms.
2023-05-02 20:31:02 -05:00
Zach Laine
21e03e7013
Use the given iterator_concept, but only define iterator_category when
...
appropriate to do so. Appropriateness follows the algorithm for zip_view's
iterator. See https://eel.is/c++draft/range.zip.transform.iterator#1 .
Requested by LEWG reviewers of iterator_interface.
2023-05-02 20:31:02 -05:00
Zach Laine
965b1119cb
Disable iterator_interface::operator-> when pointer is void or reference is
...
not a language reference.
2023-03-26 14:14:11 -05:00
Zach Laine
51c212234e
Use iterator_category_base with the C++20 version of iterator_interface.
2023-03-25 21:33:34 -05:00
Zach Laine
558548fa8a
Add detail::iterator_category_base.
2023-03-25 18:01:42 -05:00
Zach Laine
a823593710
Add simple check of nested typedefs in iterators deriving from a
...
dependently-typed iterator_interface.
2023-01-31 21:50:37 -06:00
Zach Laine
8c8f7905a1
Set the CXX_STANDARD CMake property on the compile tests.
2022-12-05 21:09:36 -06:00
Zach Laine
158fca0b6b
Make the compile_sfinae_path_mutable_iterator compile-test 14-friendly.
2022-12-05 20:29:46 -06:00
Zach Laine
c157b1637a
Add a test to cover #59 so that it does not pop up again.
...
Fixes #60 .
2022-12-05 20:11:03 -06:00
Zach Laine
bd21cd308e
Add some user/std mixed cases to view_adaptor.cpp.
2022-06-04 19:52:51 -05:00
Zach Laine
c6d7fa15fa
Break take_view out into its own header, in example/.
2022-06-04 16:10:02 -05:00
Zach Laine
808cbfac15
Break reverse_view out into its own header, in example/.
2022-06-04 16:10:02 -05:00
Zach Laine
19a2729a15
Break all_view out into its own header, in example/.
2022-06-04 16:10:02 -05:00
Zach Laine
6a64d48840
Require an actual std::ranges::view for take_view and reverse_view; take_view
...
template parameter R -> View.
2022-06-04 16:10:02 -05:00
Zach Laine
437c188167
Consistently use BOOST_STL_INTERFACES_USE_CONCEPTS as the preprocessor
...
predicate to guard test code, instead of the hodgepodge that was used
previously.
2022-06-04 16:10:02 -05:00
Zach Laine
14c3741aaf
Expand the view_adaptor test; fix errors.
2022-06-03 23:00:19 -05:00
Zach Laine
6a080f84cb
Add very simple initial test of view_adaptor; fix errors.
2022-06-03 21:27:20 -05:00
Zach Laine
80ae39ed94
Re-enable testing of contiguos iterator .data() member in random_access.cpp
...
when __cpp_lib_concepts is defined, for the GCC versions that support this.
2021-12-08 19:33:42 -06:00
Zach Laine
e98536344d
Pass an rvalue to emplace_back() in unevaluated contexts that are testing its
...
existence. This is important for containers derived from sequence_container
that constrain emplace_back() itself, and have a move-only value_type.
Fixes #48 .
2021-06-05 17:34:56 -05:00
Zach Laine
54da717c42
Include <functional> explicitly in the random access and bidirectional
...
tests, to fix compilation failures with an obscure toolchain.
2020-08-17 22:21:18 -05:00
Zach Laine
53448edcdc
Add full v2 namespace (C++20) implementation. When building in C++20 mode,
...
including with __cpp_lib_concepts defined, the v2 namespace is inlined.
Otherwise, the v1 namespace is inlined. This allows switching to
concept-constrained templates without changing any user code.
2020-08-02 00:11:55 -05:00
Zach Laine
6486db0a55
Remove const from value_type in iterator_interface.
...
Fixes #43 .
2020-06-23 18:17:26 -05:00
Glen Fernandes
e161785105
Switch to Boost.Core's lightweight_test
2020-05-01 21:50:02 -05:00
Barrett Adair
2ec1953725
Add Boost.Build support to test suite
2020-03-25 09:32:54 -05:00
Zach Laine
6fba2d57f6
Add missing #include to test.
2020-02-08 11:41:53 -06:00
Zach Laine
9111d81885
Remove the v2 namespace, including the C++20 standard lib- and cmcstl2-based
...
implementations.
Fixes #27 .
2020-01-03 15:24:30 -06:00
Zach Laine
cc224edc54
Add move-only value_type tests of static_vector example.
...
Fixes #31 .
2020-01-03 15:22:20 -06:00
Zach Laine
8c88aa5881
Fix some v2 tests missed in the Gtest -> Boost.Test conversion.
2020-01-03 15:22:20 -06:00
Zach Laine
f735c78fb8
GTest -> Boost.Test
...
Fixes #24 .
2020-01-01 18:23:06 -06:00
Zach Laine
baf9f70902
container_interface -> sequence_container_interface
...
Fixes #15 .
2020-01-01 13:32:31 -06:00
Zach Laine
e55bb9ffdb
Make element_type an enum class; bool Contiguous -> element_type Contiguity in {view,container}_interface.
...
Fixes #14 .
2020-01-01 13:32:31 -06:00
Zach Laine
c63c107793
Add copyright notices to some files that were missing it.
...
Fixes #26 .
2019-12-29 14:04:14 -06:00
Zach Laine
501e848304
Fix broken const-vs.-mutable comparisons.
2019-09-22 14:40:49 -05:00
Zach Laine
dacbc87138
Implement v2::container_interface::data().
2019-08-22 00:48:58 -05:00
Zach Laine
cae17b178b
Add v2 version of array test.
2019-08-22 00:48:58 -05:00
Zach Laine
b051cfee6a
Add provision of operator== and operator< to container_interface.
2019-08-22 00:48:58 -05:00
Zach Laine
d6bfcd7068
Add data() tests to {v2_,}static_vec; v2 versions are disabled.
2019-08-22 00:48:58 -05:00
Zach Laine
bb5e94b16c
Work around GCC ICE related to v2::container_interface::cr{begin,end}.
2019-08-22 00:48:58 -05:00
Zach Laine
8b6d352e3e
Add v2_static_vec test; fix errors; some errors remain.
2019-08-20 19:57:45 -05:00
Zach Laine
0086bdf8ef
Address all of the remaining v2::iterator_interface-related TODOs.
2019-08-20 00:05:55 -05:00
Zach Laine
67f5ea9072
Add v2_random_access test; fix errors.
2019-08-20 00:05:55 -05:00
Zach Laine
96b7473da5
Namespace refactor. Commonly used things pulled out of v1, common details pulled out of v1::detail into detail; v1::detail -> v1::v1_dtl; v2::detail -> v2::v2_dtl.
2019-08-20 00:05:55 -05:00
Zach Laine
6c4e127ccc
Add v2 tests for input, output, and bidirecitonal; all tests pass again.
2019-08-20 00:05:55 -05:00
Zach Laine
dc166ea0b5
Add sketch of cmcstl2-based iterator_interface. Fails tests.
2019-08-19 00:45:22 -05:00