GithubHelp home page GithubHelp logo

abdelghanidr / json_spirit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cierelabs/json_spirit

0.0 2.0 0.0 97 KB

C++ JSON Library including both a json-data-structure and parser (based on Boost.Spirit). The goal: use json structures in C++ like you do in python or javascript.

Home Page: http://cierelabs.org

License: Boost Software License 1.0

CMake 3.68% C++ 96.32%

json_spirit's Introduction

json spirit

A json library using Boost.Spirit 2.x for the parser.

The primary goal of the json spirit library was to create a conformant json parser that resulted in a json object that could be manipulated much like in javascript or python.

Quick Example

// the json::value is the primary data type
// you can simply assign it values

json::value v = 42;
v = "foo";
v = true;
v = 14.5;

// you can also treat the json::value like an array
v[0] = "foo";
v[1] = true;

// or a json object
v["foo"] = 42;
v["bar"] = false;

// and of course, these can be more complex
json::value z;
z[4] = v;

std::cout << z << "\n";

which would result in:

[null, null, null, null, {"bar":false, "foo":42}]

Building

We have Boost.Build and CMake support.

For Boost.Build, we assume either your user-config.jam file has a line like this:

use-project /boost	:	/sandbox/boost/trunk ;

or you have set the environment variable BOOST_ROOT to the location of the boost version you want to use.

You can build the library via:

cd json_spirit
bjam json

You can build the tests via:

cd json_spirit/libs/json/test
bjam

For CMake, do this to build the library:

cd json_spirit
mkdir build
cd build
cmake ..
make

You may specify the version of Boost to build against by defining BOOST_ROOT on the CMake command line like this:

cmake -DBOOST_ROOT=/sandbox/boost/trunk ..

To run the unit tests:

make test

Documentation

Coming soon. Unit tests located in libs/json/test/*.cpp provide a good starting point for exploration of the functionality.

Licensing

json_spirit is licensed under the Boost Software License. See LICENSE_1_0.txt for details.

json_spirit's People

Contributors

jefftrull avatar mjcaisse avatar ruslo avatar djowel avatar mloskot avatar

Watchers

James Cloos avatar Abdelghani avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.