Skip to content

Loki-Astari/ThorsSerializerOld

Folders and files

NameName
Last commit message
Last commit date
Sep 13, 2024
Aug 29, 2024
Aug 20, 2024
Apr 17, 2019
Sep 16, 2024
Jun 12, 2024
May 24, 2024
Sep 2, 2024
Mar 2, 2018
Aug 20, 2024
Apr 17, 2019
Aug 3, 2024
Feb 2, 2015
Aug 20, 2024
Feb 11, 2015
Aug 28, 2017
Aug 20, 2024
Aug 23, 2024
Sep 13, 2024
Sep 13, 2024
Sep 13, 2024

Repository files navigation

ThorsSerializer

Support for

This code is the basis for ThorsMongo a C++ API for streaming objects to a MongoDB with zero client overhead.

Code Review Code Review Code Review Code Review

Brew package

Benchmark Results

Conformance mac linux
Performance mac linux
For details see: JsonBenchmark

## Documentation

ThorStream

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.

HomeBrew

Can be installed via brew on Mac and Linux

brew install thors-mongo

Header Only

To install header only version

git clone --single-branch --branch header-only https://github.com/Loki-Astari/ThorsMongo.git

Some dependencies:

For All:    Magic Enum: https://github.com/Neargye/magic_enum
For Json:   None        :-)
For Yaml:   libYaml     https://github.com/yaml/libyaml

Building With Visual Studio

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.

Contributors

Added the all-contributors bot to generate the table.


One Page