Vinícius dos Santos Oliveira wrote:
Em ter., 23 de fev. de 2021 às 15:56, Peter Dimov via Boost
escreveu: 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.
I agree with the diagnosis, but I'm not so keen on the solution. I insist you broaden your view and take a look at other libraries that need manual annotation. If your solution only covers the JSON case, it could very well be just an abstraction inside the JSON library and isn't a vocabulary at all.
Well, there's nothing JSON-specific in the library. It provides basic reflection metadata: base classes, data members, member functions. I use JSON, hashing, and serialization as examples of libraries already in Boost that can take advantage of this information.
The documentation lacks a section comparing your solution with what's available on the market today. I'll give you a starter pack on what's to look for, but you shouldn't limit yourself to these links:
* https://doc.qt.io/qt-5/properties.html * https://doc.qt.io/qt-5/animation-overview.html * https://gi.readthedocs.io/en/latest/ * https://archive.fosdem.org/2015/schedule/event/reinventing_the_enlighten ment_object_system/
Thanks, I'll look at these.