pfr icon indicating copy to clipboard operation
pfr copied to clipboard

std::tuple like methods for user defined types without any macro or boilerplate code

Results 68 pfr issues
Sort by recently updated
recently updated
newest added

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

enhancement

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...

bug
compiler-or-standard-limitation