hack_parallel

Parallel and shared memory library
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library hack_parallel.hh_json
Module Hh_json

* Hh_json parsing and pretty printing library.

type json =
| JSON_Object of (string * json) list
| JSON_Array of json list
| JSON_String of string
| JSON_Number of string
| JSON_Bool of bool
| JSON_Null
exception Syntax_error of string
val json_to_string : ?pretty:bool -> json -> string
val json_to_multiline : json -> string
val json_to_output : out_channel -> json -> unit
val json_of_string : ?strict:bool -> string -> json
val json_of_file : ?strict:bool -> string -> json
val get_object_exn : json -> (string * json) list
val get_array_exn : json -> json list
val get_string_exn : json -> string
val get_number_exn : json -> string
val get_number_int_exn : json -> int
val get_bool_exn : json -> bool
val opt_string_to_json : string option -> json
val opt_int_to_json : int option -> json
val int_ : int -> json
val string_ : string -> json

Types and functions for monadic API for traversing a JSON object.

type json_type =
| Object_t
| Array_t
| String_t
| Number_t
| Integer_t
| Bool_t
module type Access = sig ... end

* This module gives monadic recursive access to values within objects by key. * It uses the Result.t to manage control flow in the monad when an error is * encountered. It also tracks the backtrace of the keys accessed to give * detailed error messages. * * Usage: * To access the boolean value "qux" from the following json: * "foo": { "bar" : { "baz" : { "qux" : true

module Access : Access