Git Product home page Git Product logo

jsoncons's Introduction

jsoncons

The jsoncons library implements C++ classes for the construction of JavaScript Object Notation (JSON).

The library is header-only: it consists solely of header files containing templates and inline functions, and requires no separately-compiled library binaries when linking. It has no dependence on other libraries.

To install the jsoncons library, download the zip file, unpack the release, under src find the directory jsoncons, and copy it to your include directory.

It has been tested with MS Visual C++ 10, SP1

Releases are on sourceforge https://sourceforge.net/projects/jsoncons/?source=navbar

Release 0.30

json_in_stream renamed to json_listener

json_out_stream renamed to json_writer

Added buffer accessor method to parsing_context

Release 0.20

Added parsing_context class for providing information about the element being parsed.

error_handler methods take message and parsing_context parameters

json_in_stream handlers take parsing_context parameter

Release 0.19

Added error_handler class for json_reader

Made json_exception a base class for all json exceptions

Added root() method to json_deserializer to get a reference to the json value

Removed swap_root() method from json_deserializer

Release 0.18

Renamed serialize() class method to to_stream() in json

Custom data serialization supported through template function specialization of serialize (reverses change in 0.17)

Release 0.17

Added is_custom() method to json and proxy

get_custom() method renamed to custom_data() in json and proxy

Added clear() method to json and proxy

set_member() method renamed to set()

set_custom() method renamed to set_custom_data()

push_back() method renamed to add() in json and proxy

Added add_custom_data method() in json and proxy

Custom data serialization supported through template class specialization of custom_serialization (replaces template function specialization of serialize)

Release 0.16

Change to json_out_stream and json_serializer:

void value(const custom_data& value)

removed.

Free function serialize replaces free function to_stream for serializing custom data.

pretty print tidied up for nested arrays

Release 0.15

Made eof() method on json_reader public, to support reading multiple JSON objects from a stream.

Release 0.14

Added pretty_print class

Renamed json_stream_writer to json_serializer, implements pure virtual class json_out_stream

Renamed json_stream_listener to json_deserializer implements pure virtual class json_in_stream

Renamed json_parser to json_reader, parse to read.

Changed indenting so object and array members start on new line.

Added support for storing user data in json object, and serializing to JSON.

Release 0.13

Replaced simple_string union member with json_string that wraps std::basic_string<Char>

name() and value() event handler methods on basic_json_stream_writer take const std::basic_string<Char>& rather than const Char* and length.

Release 0.12

Implemented operator<< for json::proxy

Added to_stream methods to json::proxy

Release 0.11

Added members to json_parser to access and modify the buffer capacity

Added checks when parsing integer values to determine overflow for long long and unsigned long long, and if overflow, parse them as doubles.

jsoncons's People

Contributors

danielaparker avatar

Watchers

 avatar  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.