I2O I2O est une collection de filtres pour la conversion entre les formats de fichiers implémentés par la bibliothèque CXON , qui se composent actuellement de JSON et CBOR
$ json2cbor < in.json > out.cbor # JSON to CBOR
$ cbor2json < in.cbor > out.json # CBOR to JSON
$ cat in.cbor | cbor2json | json2json > out.json # CBOR to pretty JSON JSON La mise en œuvre est strictement conforme à RFC8259 / ECMA-404 .
CBOR L'implémentation est conforme à RFC7049 .
I2O nécessite un compilateur conforme C++11 . Le compilateur conforme C++17 avec le support <charconv> ( P0067R5 ) est recommandé pour les meilleures performances.
La seule dépendance, en plus de la bibliothèque standard, est la bibliothèque CXON .
I2O peut être construit et installé à l'aide du makefile inclus sur les systèmes POSIX :
$ git clone https://github.com/oknenavin/cxon.git
$ sudo make -C cxon install
$ git clone https://github.com/oknenavin/i2o.git
$ sudo make -C i2o install Le répertoire d'installation par défaut est /usr/local/bin et peut être modifié avec DESTDIR et les variables prefix , par exemple:
$ git clone https://github.com/oknenavin/cxon.git
$ sudo make -C cxon DESTDIR= ~ prefix=/. install
$ git clone https://github.com/oknenavin/i2o.git
$ sudo make -C i2o DESTDIR= ~ prefix=/. install Installera CXON et I2O dans ~/include et ~/bin respectivement.
Parce que CXON est une bibliothèque d'en-tête uniquement, vous pouvez sauter son installation:
$ git clone https://github.com/oknenavin/cxon.git
$ git clone https://github.com/oknenavin/i2o.git
$ sudo make -C i2o CXXFLAGS= " ../cxon/src " installOu tout simplement construire en place:
$ git clone https://github.com/oknenavin/cxon.git
$ git clone https://github.com/oknenavin/i2o.git
$ make -C i2o CXXFLAGS= " ../cxon/src " # the binaries are in i2o/.out Tout type de contribution (commentaires, suggestions, code, tests, documentation, etc.) est le bienvenu.
Contactez via GitHub (créez un problème même c'est juste une question ou un commentaire) ou par courrier.
Distribué sous la licence du MIT. Voir LICENSE pour plus d'informations.
Github