diff --git a/linol-lwt/_doc-dir/CHANGES.md b/linol-lwt/_doc-dir/CHANGES.md index b8676724..82fbcdfd 100644 --- a/linol-lwt/_doc-dir/CHANGES.md +++ b/linol-lwt/_doc-dir/CHANGES.md @@ -1,4 +1,11 @@ +# 0.10 + +- use `git subtree` to vendor lsp+jsonrpc, so that they + are not dependencies anymore and do not conflict with + other users +- Add `filter_text_document` to ignore some documents + # 0.9 - Drop redundant dependency on atomic diff --git a/linol/_doc-dir/CHANGES.md b/linol/_doc-dir/CHANGES.md index b8676724..82fbcdfd 100644 --- a/linol/_doc-dir/CHANGES.md +++ b/linol/_doc-dir/CHANGES.md @@ -1,4 +1,11 @@ +# 0.10 + +- use `git subtree` to vendor lsp+jsonrpc, so that they + are not dependencies anymore and do not conflict with + other users +- Add `filter_text_document` to ignore some documents + # 0.9 - Drop redundant dependency on atomic diff --git a/yojson/Yojson/index.html b/yojson/Yojson/index.html index e8817a51..4505d922 100644 --- a/yojson/Yojson/index.html +++ b/yojson/Yojson/index.html @@ -1,51 +1,51 @@ -
YojsonThe Yojson library provides several types for representing JSON values, with different use cases.
Each of these different types have their own module.
Exception used:
float value is not allowed in standard JSON.type lexer_state = {buf : Stdlib.Buffer.t;Buffer used to accumulate substrings
*)mutable lnum : int;Current line number (counting from 1)
*)mutable bol : int;Absolute position of the first character of the current line (counting from 0)
*)mutable fname : string option;Name referencing the input file in error messages
*)}module Lexer_state : sig ... endval init_lexer :
+Yojson (yojson.Yojson) Module Yojson
The Yojson library provides several types for representing JSON values, with different use cases.
- The Basic JSON type,
- The Safe JSON type, a superset of JSON with safer support for integers,
- The Raw JSON type, a superset of JSON, safer but less integrated with OCaml types.
Each of these different types have their own module.
Shared types and functions
type lexer_state = {buf : Stdlib.Buffer.t;mutable lnum : int;mutable bol : int;mutable fname : string option;
}module Lexer_state : sig ... endval init_lexer :
?buf:Stdlib.Buffer.t ->
?fname:string ->
?lnum:int ->
unit ->
- lexer_stateCreate a fresh lexer_state record.
Type of the JSON tree
type t = [ | `Null| `Bool of bool| `Int of int| `Intlit of string| `Float of float| `Floatlit of string| `String of string| `Stringlit of string| `Assoc of (string * t) list| `List of t list| `Tuple of t list| `Variant of string * t option
]All possible cases defined in Yojson:
- `Null: JSON null
- `Bool of bool: JSON boolean
- `Int of int: JSON number without decimal point or exponent.
- `Intlit of string: JSON number without decimal point or exponent, preserved as a string.
- `Float of float: JSON number, Infinity, -Infinity or NaN.
- `Floatlit of string: JSON number, Infinity, -Infinity or NaN, preserved as a string.
- `String of string: JSON string. Bytes in the range 128-255 are preserved as-is without encoding validation for both reading and writing.
- `Stringlit of string: JSON string literal including the double quotes.
- `Assoc of (string * json) list: JSON object.
- `List of json list: JSON array.
- `Tuple of json list: Tuple (non-standard extension of JSON). Syntax:
("abc", 123). - `Variant of (string * json option): Variant (non-standard extension of JSON). Syntax:
<"Foo"> or <"Bar":123>.
val pp : Stdlib.Format.formatter -> t -> unitPretty printer, useful for debugging
val show : t -> stringConvert value to string, useful for debugging
equal a b is the monomorphic equality. Determines whether two JSON values are considered equal. In the case of JSON objects, the order of the keys does not matter, except for duplicate keys which will be considered equal as long as they are in the same input order.
JSON writers
val to_string :
+ lexer_stateval pp : Stdlib.Format.formatter -> t -> unitval show : t -> stringval to_string :
?buf:Stdlib.Buffer.t ->
?len:int ->
?suf:string ->
?std:bool ->
t ->
- stringWrite a compact JSON value to a string.
val to_channel :
?buf:Stdlib.Buffer.t ->
?len:int ->
?suf:string ->
?std:bool ->
- out_channel ->
+ Stdlib.out_channel ->
t ->
- unitWrite a compact JSON value to a channel. Note: the out_channel is not flushed by this function.
See to_string for the role of the optional arguments and raised exceptions.
val to_output :
?buf:Stdlib.Buffer.t ->
?len:int ->
?suf:string ->
?std:bool ->
< output : string -> int -> int -> int.. > ->
t ->
- unitWrite a compact JSON value to an OO channel.
See to_string for the role of the optional arguments and raised exceptions.
val to_file : ?len:int -> ?std:bool -> ?suf:string -> string -> t -> unitWrite a compact JSON value to a file. See to_string for the role of the optional arguments and raised exceptions.
val to_buffer : ?suf:string -> ?std:bool -> Stdlib.Buffer.t -> t -> unitWrite a compact JSON value to an existing buffer. See to_string for the role of the optional argument and raised exceptions.
val to_file : ?len:int -> ?std:bool -> ?suf:string -> string -> t -> unitval to_buffer : ?suf:string -> ?std:bool -> Stdlib.Buffer.t -> t -> unitval seq_to_string :
?buf:Stdlib.Buffer.t ->
?len:int ->
?suf:string ->
?std:bool ->
t Stdlib.Seq.t ->
- stringWrite a sequence of suf-suffixed compact one-line JSON values to a string.
val seq_to_channel :
?buf:Stdlib.Buffer.t ->
?len:int ->
?suf:string ->
?std:bool ->
- out_channel ->
+ Stdlib.out_channel ->
t Stdlib.Seq.t ->
- unitWrite a sequence of suf-suffixed compact one-line JSON values to a channel.
val seq_to_file :
?len:int ->
?suf:string ->
?std:bool ->
string ->
t Stdlib.Seq.t ->
- unitWrite a sequence of suf-suffixed compact one-line JSON values to a file.
val seq_to_buffer :
?suf:string ->
?std:bool ->
Stdlib.Buffer.t ->
t Stdlib.Seq.t ->
- unitWrite a sequence of suf-suffixed compact one-line JSON values to an existing buffer.
val write_t : Stdlib.Buffer.t -> t -> unitWrite the given JSON value to the given buffer. Provided as a writer function for atdgen.
Miscellaneous
Sort object fields (stable sort, comparing field names and treating them as byte sequences)
JSON pretty-printing
val pretty_print : ?std:bool -> Stdlib.Format.formatter -> t -> unitPretty-print into a Format.formatter. See to_string for the role of the optional std argument.
val pretty_to_string : ?std:bool -> t -> stringPretty-print into a string. See to_string for the role of the optional std argument. See pretty_print for raised exceptions.
val pretty_to_channel : ?std:bool -> out_channel -> t -> unitPretty-print to a channel. See to_string for the role of the optional std argument. See pretty_print for raised exceptions.
Basic JSON tree type
module Basic : sig ... endThis module supports standard JSON nodes only, i.e. no special syntax for variants or tuples as supported by Yojson.Safe. Arbitrary integers are not supported as they must all fit within the standard OCaml int type (31 or 63 bits depending on the platform).
Multipurpose JSON tree type
module Safe : sig ... endThis module supports a specific syntax for variants and tuples in addition to the standard JSON nodes. Arbitrary integers are supported and represented as a decimal string using `Intlit when they cannot be represented using OCaml's int type (31 or 63 bits depending on the platform).
JSON tree type with literal int/float/string leaves
module Raw : sig ... endInts, floats and strings literals are systematically preserved using `Intlit, `Floatlit and `Stringlit. This module also supports the specific syntax for variants and tuples supported by Yojson.Safe.
Supertype of all JSON tree types
+ unitval write_t : Stdlib.Buffer.t -> t -> unitval write_null : Stdlib.Buffer.t -> unit -> unitval write_bool : Stdlib.Buffer.t -> bool -> unitval write_int : Stdlib.Buffer.t -> int -> unitval write_float : Stdlib.Buffer.t -> float -> unitval write_std_float : Stdlib.Buffer.t -> float -> unitval write_float_prec : int -> Stdlib.Buffer.t -> float -> unitval write_std_float_prec : int -> Stdlib.Buffer.t -> float -> unitval write_string : Stdlib.Buffer.t -> string -> unitval write_intlit : Stdlib.Buffer.t -> string -> unitval write_floatlit : Stdlib.Buffer.t -> string -> unitval write_stringlit : Stdlib.Buffer.t -> string -> unitval write_assoc : Stdlib.Buffer.t -> (string * t) list -> unitval write_list : Stdlib.Buffer.t -> t list -> unitval write_tuple : Stdlib.Buffer.t -> t list -> unitval write_std_tuple : Stdlib.Buffer.t -> t list -> unitval write_variant : Stdlib.Buffer.t -> string -> t option -> unitval write_std_variant : Stdlib.Buffer.t -> string -> t option -> unitval write_json : Stdlib.Buffer.t -> t -> unitval write_std_json : Stdlib.Buffer.t -> t -> unitval pretty_print : ?std:bool -> Stdlib.Format.formatter -> t -> unitval pretty_to_string : ?std:bool -> t -> stringval pretty_to_channel : ?std:bool -> Stdlib.out_channel -> t -> unitmodule Basic : sig ... endThis module supports standard JSON nodes only, i.e. no special syntax for variants or tuples as supported by Yojson.Safe. Arbitrary integers are not supported as they must all fit within the standard OCaml int type (31 or 63 bits depending on the platform).
module Safe : sig ... endThis module supports a specific syntax for variants and tuples in addition to the standard JSON nodes. Arbitrary integers are supported and represented as a decimal string using `Intlit when they cannot be represented using OCaml's int type (31 or 63 bits depending on the platform).
module Raw : sig ... endInts, floats and strings literals are systematically preserved using `Intlit, `Floatlit and `Stringlit. This module also supports the specific syntax for variants and tuples supported by Yojson.Safe.