$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Peter Dimov (pdimov_at_[hidden])
Date: 2021-02-23 18:56:22
This is a reminder that my library Describe
https://github.com/pdimov/describe
https://pdimov.github.io/describe/doc/html/describe.html
needs a review manager.
Describe is a library that allows programmers to annotate their classes (and
enumerations) in order to enable simple reflection. It provides a very
important fundament on which other libraries can build upon to provide
automatic support for user-defined types.
For example, given an annotated type, Boost.JSON can automatically provide
conversions from/to json::value. Boost.ContainerHash can automatically
provide a hash function hash_value for the type. Boost.Serialization can
automatically provide serialization support. See the examples:
https://pdimov.github.io/describe/doc/html/describe.html#example_to_json
https://pdimov.github.io/describe/doc/html/describe.html#example_from_json
https://pdimov.github.io/describe/doc/html/describe.html#example_serialization
Other JSON (and serialization) libraries already offer a similar mechanism,
e.g. https://github.com/nlohmann/json#arbitrary-types-conversions. But since
each library has its own private way to annotate types, a programmer needs
to repeat the type annotations for every library he wants his type to be
known to. This is unnecessary and undesirable, and a standard mechanism to
describe types avoids it.
Describe is intended to be this standard mechanism, and I believe that we
need it in Boost sooner rather than later.
Thanks in advance to whoever volunteers.