JSON Parser

REXJSON is a tiny library for parsing JSON format. It uses a DFA generated by the rexcc compiler. The C implementation is about 700 lines of code in 3 files. It is suitable for embedded systems with limited memory. The parser never allocates memory on its own, it only operates within the memory provided by the caller. To start using the parser you just need to get the files from the rexjson directory and include them in your project. These files don't require to be linked to the rest of RPA/Tk, they can be used independently.

Features

  • Parses JSON data in one pass
  • Implemented in both C and C++
  • The C implementaion does not allocate dynamic memory
  • Pretty output serialization (only available in the C++ implementaion)
  • Small memory footprint
  • MIT license, can be used in proprietary projects
  • Implemented in only a few source files:

The rexjsondfa.h is automatically generated from rexjson.rexcc file. To generate it use the rexcc compiler:

# rexcc rexjsondfa.rexcc -o rexjsondfa.h