On Sat, Jan 24, 2026 at 7:38 AM Andrzej Krzemienski <akrzemi1@gmail.com> wrote:
10. Header `restriction.hpp` has functions `make_restriction()` defined. Are they intended for users? If so, they need to be listed in "Reference"' also.
I remember now by looking at the code. This `make_restriction` is in a detail namespace; it converts a rectangular initializer list into a lazy function for internal use, which is the only clean way to initialize from an initializer list without *intermediate* allocations. Sorry for the confusion, the function is in the detail namespace and therefore still an implementation detail, not for users. The `multi::restriction` constructor (and CTAD) is enough to generate restrictions. There might be `multi::make_restriction` in the future, but mainly to cover cases where CTAD doesn't do the right thing, and one wants to "copy-by-reference-wrapper" with the helper `std::ref`. In the same way that CTAD `std::pair` doesn't 100% replace `std::make_pair`. Thanks, Alfredo