Conformance mac linux
Performance max linux
For details see: JsonBenchmark
Yet another JSON/YAML/BSON serialization library for C++.
Unlike other libraries this one does not require you to build DOM of you object before serialization. Using a declarative C++ style you define what C++ classes (and members) you want to serialize "ThorSerializer" will generate the appropriate code automagically.
- Objective
- Trivial Example
- Simple Example
- Enum Example
- Bigger Example
- PolyMorphic Example
- Installing
- Documentation Usage
- Documentation Internal
Can be installed via brew on Mac and Linux
brew install thors-serializer
- Mac: https://formulae.brew.sh/formula/thors-serializer
- Linux: https://formulae.brew.sh/formula-linux/thors-serializer
To install header only version
git clone --single-branch --branch header-only https://github.com/Loki-Astari/ThorsSerializer.git
Some dependencies:
For All: Magic Enum: https://github.com/Neargye/magic_enum
For Json: None :-)
For Bson: boost https://www.boost.org/ needs boost/endian/conversion.hpp
For Yaml: libYaml https://github.com/yaml/libyaml
To build on windows you will need to add the flag: /Zc:preprocessor
. These libraries make heavy use of VAR_ARG macros to generate code for you so require conforming pre-processor. See Macro Expansion of VA_ARGS Bug in Visual Studio? for details.
Added the all-contributers bot to generate the table.