Zach Laine
e60873635e
MacOS 12 -> 13 in Github action builds.
boost-1.88.0.beta1
boost-1.88.0
2025-02-21 00:01:05 -06:00
Zach Laine
7776ae4191
Use BOOST_GCC, defined in config.hpp only for real (non-Clang-emulated) GCC
...
builds, in place of relevant uses of the __GNUC__ macro.
2025-02-21 00:01:05 -06:00
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
Dirk Stolle
ea68455268
Fix two typos
2025-02-16 12:48:36 -06:00
Laurent Rineau
2d20447488
fix a typo
2025-02-16 12:47:45 -06:00
Zach Laine
cefbd3014a
When defining BOOST_STL_INTERFACES_USE_DEDUCED_THIS=1, require C++23 mode for
...
the cases where __cpp_explicit_this_parameter is not defined, but the compiler
is known to support it. Obviously, even if those compiler support it, it's
not available in older C++ versions.
Fixes #72 .
Related to https://github.com/boostorg/stl_interfaces/pull/68
boost-1.87.0
boost-1.87.0.beta1
2024-11-10 12:43:48 -06:00
Edward Nolan
f89646cddf
Enable BOOST_STL_INTERFACES_USE_DEDUCED_THIS on Clang 19 and MSVC 19.41
...
Clang 19 and MSVC 19.41 both have support for deducing this that is
complete enough to allow the v3 version of this library to work but
not complete enough for the compilers to define
__cpp_explicit_this_parameter. This commit enables the v3 version of
this library on compilers with that version or newer. We make use of
BOOST_CLANG_VERSION here because on AppleClang it should provide the
version of upstream Clang that was used for that release.
2024-10-24 17:47:40 -05:00
Zach Laine
2d001de901
Add [[no_unique_address]] to the data members of the adaptors in
...
view_adaptor.hpp.
Fixes #65 .
2024-10-23 20:44:43 -05:00
Zach Laine
e0ff7f6c80
Convertible to bool -> void in sequence container swap() requirements.
...
Fixes #71 .
2024-10-21 18:11:36 -05:00
Rene Rivera
b87b34c4cb
Adjust doc build to avoid boost-root references.
2024-09-27 18:46:58 -05:00
Rene Rivera
c23c56d7ea
Move inter-lib dependencies to a project variable and into the build targets.
2024-09-27 18:46:58 -05:00
Rene Rivera
34a25d2c79
Update copyright dates.
2024-09-27 18:46:58 -05:00
Rene Rivera
12f2b68504
Change all <source> references to <library>.
2024-09-27 18:46:58 -05:00
Rene Rivera
1ea9fd3ca2
Bump B2 require to 5.2
2024-09-27 18:46:58 -05:00
Rene Rivera
4c6c77aa2b
Add requires-b2 check to top-level build file.
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
3d3f3cc507
Switch to library requirements instead of source. As source puts extra source in install targets.
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
ea2f078d0e
Try to repair Github actions by removing GCC6 from the build, and not using
...
any docker containers at all.
2024-09-27 18:40:47 -05:00
Zach Laine
6e5e8cb88c
actions/checkout@v4 -> actions/checkout@v3 in Github actions.
2024-09-27 18:35:19 -05:00
Zach Laine
b6fb7dca30
actions/checkout@v2 -> actions/checkout@v4 in Github actions.
2024-09-27 18:32:32 -05:00
Zach Laine
0f422d58cb
Fix typo in adaptor::op() (f/f_ confusion).
boost-1.85.0.beta1
boost-1.85.0
boost-1.86.0.beta1
boost-1.86.0
2024-01-22 01:34:07 -06:00
Zach Laine
1c050d2df5
Add an rvalue-qualified overload of closure::operator(). This makes
...
forwarding work properly in cases such as r | foo(std::string("foo")), where
foo is an adaptor. Without this, the std::string temporary dangles.
2024-01-21 15:26:41 -06:00
Zach Laine
510eb431fb
Fixes #63 .
2023-09-05 21:02:51 -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.
boost-1.84.0.beta1
boost-1.84.0
boost-1.83.0.beta1
boost-1.83.0
2023-06-05 00:12:54 -05:00
Zach Laine
6ee9557df9
Fix errors on MSVC.
2023-06-04 19:05:28 -05:00
Zach Laine
85e07407ab
Update the OSX test runner image and XCode version.
2023-05-29 22:52:00 -05:00
Zach Laine
d61867d8be
GCC 13 reports as ill-formed code that evaluates a concept C more than once
...
with the same template parameters, when the value of C changes between the
evaluations. This is correct, but no other implementation checks this. Move
all the hidden friends out of the v2::iterator_interface to fix these kinds of
errors.
2023-05-29 15:21:37 -05:00
Zach Laine
cb96522275
detail::sub -> detail::iter_sub; make iter_sub a bit more robust.
2023-05-03 20:06:56 -05:00
Zach Laine
46c82966a6
Fix sign confusion in iterator_interface::op<=>.
2023-05-03 20:06:17 -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
86aeeb1bb5
Add support for operator<=> comparisons of iterator_interfaces.
2023-03-29 18:55:25 -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
8390819a70
Print message when cloning Boost.
2022-12-06 05:29:01 -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
7dd2b97589
Cruft removal.
2022-11-19 22:26:03 -06:00
Zach Laine
1dc2923434
Add non-const overloads of op* and op-> to v1 iterator_interface. This
...
matches more closely what v2 does.
Fixes #59 .
boost-1.82.0.beta1
boost-1.82.0
boost-1.81.0
2022-11-18 19:54:40 -06:00
Zach Laine
24f9450297
Doc copy editing.
boost-1.80.0
boost-1.81.0.beta1
boost-1.80.0.beta1
2022-06-04 20:06:33 -05:00
Zach Laine
bd21cd308e
Add some user/std mixed cases to view_adaptor.cpp.
2022-06-04 19:52:51 -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