On Thu, Aug 22, 2019 at 9:11 PM Zach Laine via Boost
As mentioned a couple of weeks ago, I started a small library that was an updated iterator_facade. It is now a still-smallish library called stl_interfaces that includes a pre-C++20 implementation of view_interface, and analogous templates iterator_interface (a cross between Boost.Iterator's iterator_facade and iterator_adaptor), and container_interface. Each of these makes it easier to write a view, iterator, or container, respectively. Using container_interface, I was able to write a version of static_vector in which I implemented only 21 member functions, and the template provided the other 40(!) functions.
The library is C++14 and later. There is an inline v1 namespace for the C++14 implementations, and an experimental non-inline v2 namespace with implementations using C++20 standard concepts. The part using C++20 concepts requires GCC 8 or 9, and cmcstl2 (more info on that on the Github page).
Github page:
https://github.com/tzlaine/stl_interfaces
Online docs:
https://tzlaine.github.io/stl_inteTherfaces/doc/html/index.html https://tzlaine.github.io/stl_interfaces/doc/html/index.html
Oh, and if you're willing to act as review manager, please let me know.
Zach
I'm a bit late to the party here, but I took a look at the updated github. I'm still excited about this library. It's obvious to me that a lot of thought and care has gone into it, and I would use it in a heartbeat. Boost would be remiss to overlook this for review.
_______________________________________________ Unsubscribe & other changes: