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
24f9450297
Doc copy editing.
2022-06-04 20:06:33 -05:00
Zach Laine
544c7448b4
Add a discussion of why it is sometimes necessary to use bind_back() directly.
2022-06-04 17:17:41 -05:00
Zach Laine
303a9da254
Create tutorial for the new range adaptor helpers.
2022-06-04 17:17:41 -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
907759ada3
Fix broken BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT macro; it now properly
...
static_asserts in C++20 builds.
2021-06-05 17:52:50 -05:00
Zach Laine
5be9130135
Correct comment in example.
2020-08-03 12:15:42 -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
6d31433af0
Add a metafunciton iter_concept, which matches the behavior of C++20's
...
ITER_CONCEPT, and use it to fix errors when compiling in C++20 mode.
2020-07-09 16:54:05 -05:00
Zach Laine
6486db0a55
Remove const from value_type in iterator_interface.
...
Fixes #43 .
2020-06-23 18:17:26 -05: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
9121eea229
Remove resize() from sequence_container_interface.
2020-01-03 15:22:20 -06:00
Zach Laine
32916776f5
Add missing #include <tuple> (for std::tie) to the static_vector example.
...
Fixes #21 .
2020-01-01 13:32:31 -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
f0dc49747f
Remove boneheaded attempt to provide container dtors via container_interface.
...
Fixes #12 .
2020-01-01 13:32:23 -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
fcfcdd7d89
Doc spell-checking.
2019-08-23 00:07:07 -05:00
Zach Laine
b051cfee6a
Add provision of operator== and operator< to container_interface.
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
67f5ea9072
Add v2_random_access test; fix errors.
2019-08-20 00:05:55 -05:00
Zach Laine
37d421f20e
Doc copy editing.
2019-08-16 22:12:03 -05:00
Zach Laine
5328878b97
Doc typos.
2019-08-15 22:32:51 -05:00
Zach Laine
bbc7480991
Extend the static_vector/container_interface docs.
2019-08-15 22:09:02 -05:00
Zach Laine
c4503988d8
Add test for static_vector/container_interface.
2019-08-15 22:09:02 -05:00
Zach Laine
e6493c7ed4
Remove from container_interface view_interface inheritance; container_interface is now self-sufficient.
2019-08-15 22:09:02 -05:00
Zach Laine
e5d6edd83a
Correct errors in container_interface, and extend it slightly.
2019-08-15 22:09:02 -05:00
Zach Laine
0357340748
Add an initial sketch of a container_interface example.
2019-08-14 23:44:27 -05:00
Zach Laine
c6e79cf3a7
Add test for reverse_iterator.
2019-08-14 19:51:07 -05:00
Zach Laine
cca6c86e9c
Complete initial sketch of container_interface (without associative container API).
2019-08-14 19:51:07 -05:00
Zach Laine
1f7b6b886b
Round out view_interface docs.
2019-08-13 22:59:09 -05:00
Zach Laine
0be3e26c6b
Document the new adaptor-like behavior.
2019-08-13 22:28:53 -05:00
Zach Laine
67f5a45fa2
Extend the drop_while_view example and associated docs.
2019-08-13 00:08:42 -05:00
Zach Laine
fab534daa1
Add partial sketch of drop_while_view example.
2019-08-12 21:28:32 -05:00
Zach Laine
97ca350172
Rename the library stl_interfaces; iterator_facade.hpp ->
...
iterator_interface.hpp.
2019-08-12 18:09:37 -05:00
Zach Laine
a259a08cea
prev() and next() -> operator++() and operator()-- in user operations
2019-08-12 18:09:31 -05:00
Zach Laine
8af27e0ce4
Reimplement all of iterator_facade, rename it iterator_interface.
2019-08-12 00:35:20 -05:00
Zach Laine
485b135efa
const_repeated_chars_iterator::reference: char const -> char
2019-08-11 11:06:00 -05:00
Zach Laine
89241347a8
Add empty string to all static_asserts for C++14 compat.
2019-08-10 20:25:29 -05:00
Zach Laine
9a7791af84
Add missing #include <string> in example/repeated_chars_iterator.cpp.
2019-08-10 20:16:37 -05:00
Zach Laine
c0e571d034
Add static_assert macros, use them in the tests and examples, and add docs for
...
them.
2019-08-10 18:34:21 -05:00
Zach Laine
b7fea24984
Finish the reverse_iterator example.
2019-08-10 17:20:19 -05:00
Zach Laine
5671fa0f73
Enable the examples in the docs; copy editing therein.
2019-08-10 10:41:53 -05:00
Zach Laine
ac033389b9
Turns out default constructibility is required for all iterator concepts.
2019-08-10 10:30:10 -05:00
Zach Laine
a415c05877
Sketch in most of the doc examples.
2019-08-10 10:30:10 -05:00
Zach Laine
e4cfa2aa64
Docs copy editing.
2019-08-10 09:58:11 -05:00
Zach Laine
7bb5f26535
Add example/node_iterator.cpp; address remaining TODOs in tutoral.qbk.
2019-08-10 09:33:45 -05:00