pfr
pfr copied to clipboard
std::tuple like methods for user defined types without any macro or boilerplate code
How about this sugar? ``` struct sample { int first; const char* second; double third; }; auto t = sample {1, "Foo", 3.14}; // index-based access std::cout
Clang-tidy 12 is complaining: ``` /home/runner/work/cherry_blazer/cherry_blazer/_deps/boost_pfr-src/include/boost/pfr/detail/sequence_tuple.hpp:53:5: warning: Undefined or garbage value returned to caller [clang-analyzer-core.uninitialized.UndefReturn] return t.value; ^ /home/runner/work/cherry_blazer/cherry_blazer/src/canvas.cc:126:37: note: Assuming 'nth_batch' is < 'batch_count' for (std::size_t nth_batch = 0;...
I don't know if this is a bug or feature, but `BOOST_PFR_FUNCTIONS_FOR` requires structure members to have an `std::hash` specialization, but it doesn't itself provide one, so the following example...
It's new macro is not tested
This macro will help me embed boost.pfr into boost.fusion without breaking backward compatibility. Without this macro, I am forced to provide backward compatibility with a dirty hack like: https://github.com/denzor200/fusion/blob/e9d7fcdcd8de4e66bff5427726d777c222e7590d/include/boost/fusion/support/config.hpp#L136
Multiple visitation is easy enough to achieve with a library like Boost.Hana (see below), but I think it would be useful functionality for ```for_each_field``` to support directly. ```cpp template constexpr...
Sometimes it is convenient to have a freestanding version of the library, that does not mention boost. Make a script that produces such version
Hi, I thought of using the magic of this library as a shortcut for providing a standard "tuple-like" interface for aggregates, for use in generic code that expects it, in...
Provided the following hierarchy of classes: ```C++ namespace empty_base { struct A {}; struct B {}; // Empty base, no members struct C : A {}; // Empty base, some...