Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

JSON parsing and pretty-printing library for OCaml

branch: master

v1.1.8

latest commit e06043130b
Martin Jambon authored January 19, 2014
Octocat-spinner-32 examples Added exception-free filters February 27, 2012
Octocat-spinner-32 Changes Fixed problem happening when writing 31-bit code points on 32-bit hosts December 31, 2012
Octocat-spinner-32 INSTALL Added INSTALL file. September 12, 2010
Octocat-spinner-32 LICENSE Added license and version to ydump output. March 10, 2012
Octocat-spinner-32 META.in check native dynlink support August 06, 2013
Octocat-spinner-32 Makefile v1.1.8 January 19, 2014
Octocat-spinner-32 README.md Markdowned readme March 12, 2012
Octocat-spinner-32 bench.ml
Octocat-spinner-32 common.ml Fixed problem happening when writing 31-bit code points on 32-bit hosts December 31, 2012
Octocat-spinner-32 common.mli Added license and version to ydump output. March 10, 2012
Octocat-spinner-32 pretty.ml "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 pretty.mli "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 read.mli Added "compact" function, fixed support for ?std option on "prettify". December 27, 2011
Octocat-spinner-32 read.mll Tolerate double-quoted booleans "true" and "false" when a boolean is May 23, 2013
Octocat-spinner-32 safe.ml "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 safe.mli "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 sample.json Added benchmark program (comparison with json-wheel). May 06, 2010
Octocat-spinner-32 test.json Added proper support for escaped Unicode code points beyond U+FFFF, December 30, 2012
Octocat-spinner-32 type.ml "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 util.ml Added exception-free filters February 27, 2012
Octocat-spinner-32 util.mli Util.to_assoc: fix documentation error October 20, 2013
Octocat-spinner-32 write.ml New behavior for write_float_prec and write_std_float_prec: print given May 15, 2013
Octocat-spinner-32 write.mli New functions write_float_prec and write_std_float_prec March 29, 2013
Octocat-spinner-32 write2.ml "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 write2.mli "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
Octocat-spinner-32 ydump.ml
Octocat-spinner-32 yojson.ml.cppo Decouple biniou-related functionality from JSON-only functionality by… January 26, 2012
Octocat-spinner-32 yojson.mli.cppo Decouple biniou-related functionality from JSON-only functionality by… January 26, 2012
Octocat-spinner-32 yojson_biniou.ml New functions write_float_prec and write_std_float_prec March 29, 2013
Octocat-spinner-32 yojson_biniou.mli "-s" is now the default for ydump; "-u" must be used for the old February 07, 2012
README.md

Yojson: JSON library for OCaml

The main project page is http://mjambon.com/yojson.html Yojson supersedes json-wheel.

Design goals

  • reducing inter-package dependencies by the use of polymorphic variants for the JSON tree type

  • allowing variants of the JSON tree type to be shipped by the library itself or to be easily created as extensions of the library

  • allowing type-aware serializers/deserializers such as json-static to read and write directly without going through a JSON tree, for efficiency purposes. This requires making readers and writers of JSON atoms (int, string, etc.) to be exported and composable.

  • providing a few non-standard, optional extensions of JSON. These extensions will include:

    • optional quotes around "simple" field/constructor names
    • a syntax for tuples (at least 2 elements): (x, y)
    • a syntax for variants (0 or 1 arg only):

Other choices already in json-wheel

  • distinction between ints and floats (optional)

  • Getting rid of the UTF-X encoding constraint that prevents from exchanging binary data:

    • encoding is ASCII except for the contents of string literals
    • string literals may represent arbitrary sequence of bytes
    • \uABCD escapes in string literals expand to UTF-8

Miscellaneous

  • no dependency on ocamlnet for UTF-8
Something went wrong with that request. Please try again.