We'll dive into designing a C++ type for working with JSON values. We will:
- remind ourselves some basic ideas and nuances of type design in C++;
- carefully look back at the standard containers and
std::variant
; - try to make the interface easy to use correctly and hard to use incorrectly;
- and add support for C++ allocators.
Along the way, we'll hit a few bumps on the standard library implementations and a compiler.
After the talk, among other things, you will have a good idea of how to cook std::variant
.
Description on the conference site:
https://cppconf.ru/en/talks/79bced96b2654180b826771af1c88fbf/
(and in Russian)
Slides:
- [PDF](JSON in C++-value type.pdf)
- [PPTX](JSON in C++-value type.pptx)