benejson pull parser
Dependencies
- Core's dependencies
- C++ compiler
- STL exceptions
Build
Same as core.
License
MIT/X License
Authors
David Bender (codehero@gmail.com)
Contact
David Bender (codehero@gmail.com)
Mailing List (benejson@librelist.com)
Applications
- Use for simple C++ parsing.
- Parse valid JSON + Infinity, NaN values.
Design
- Consists of a single class, Pull Parser, and supporting exceptions.
- The PullParser interface is higher level C++ class designed to make parsing code resemble more closely the schema defining the data.
- Fragmentation issues concerning numbers disappear behind the PullParser class.
- The user "pulls" data from the JSON file piece by piece, rather than trying to catch data in a callback and maintain state between callbacks.
- Reading large strings is akin to reading file data (chunk by chunk)
- For those of you who like exceptions, you will like the Pull Parser as each "pull" carries with it an expectation of type. Error catching is very smooth.
- Thrown exceptions identify which character in the input caused the exception.
- For those of you who despise exceptions, feel free to contribute an exception free version.
Usage
Please see source package or github repository.
Project Ideas
- Create library to incrementally parse CouchDB responses (especially views)
Download
Please go to the Downloads page for the latest tagged release.
You can also clone the project with Git
by running:
$ git clone git://github.com/codehero/benejson