reflect-cpp v0.25.0 is released - includes support for CLI parsing, boost-serialization, cereal, yas
As someone whom I have met on this subreddit pointed out to me, it's been a while since I've posted here , so I thought maybe it is time for another post.
reflect-cpp (https://github.com/getml/reflect-cpp) is a C++-20 library for serialization and deserialization, similar to Rust's serde or Python's Pydantic.
Through discussions in this subreddit, we figured out that reflection capabilities, which are now officially supported in C++-26, can actually be achieved in C++-20. So we built an entire library around it. If you are interested in how that can be done in C++-20, I'd be happy to explain it to you.
v0.25.0 introduces a series of new features. My favourite one is CLI parsing, which is similar to Rust's structopt. This community contribution came completely out of the blue, but I love it. But we also introduce support for three new serialization format's, namely boost-serialization, Cereal and yas.
I am particularly impressed by yas' (https://github.com/niXman/yas) performance - even though it is not a very well-known format/library, it significantly outperforms most of the more well-established formats in our benchmarks.
As always, any kind of feedback, particularly constructive criticism is very welcome.
https://redd.it/1tsqnyy
@r_cpp
Post #25328
14