Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
\ No newline at end of file
diff --git a/dev/containers/CCChar/Infix/index.html b/dev/containers/CCChar/Infix/index.html
index 80d9c93a..ea861d77 100644
--- a/dev/containers/CCChar/Infix/index.html
+++ b/dev/containers/CCChar/Infix/index.html
@@ -1,2 +1,2 @@
-Infix (containers.CCChar.Infix)
\ No newline at end of file
diff --git a/dev/containers/CCChar/index.html b/dev/containers/CCChar/index.html
index 0062ffc2..757e56cd 100644
--- a/dev/containers/CCChar/index.html
+++ b/dev/containers/CCChar/index.html
@@ -1,2 +1,2 @@
-CCChar (containers.CCChar)
The comparison function for characters, with the same specification as Stdlib.compare. Along with the type t, this function compare allows the module Char to be passed as argument to the functors Set.Make and Map.Make.
The comparison function for characters, with the same specification as Stdlib.compare. Along with the type t, this function compare allows the module Char to be passed as argument to the functors Set.Make and Map.Make.
\ No newline at end of file
diff --git a/dev/containers/CCFormat/index.html b/dev/containers/CCFormat/index.html
index 8d9d6af8..f23d5513 100644
--- a/dev/containers/CCFormat/index.html
+++ b/dev/containers/CCFormat/index.html
@@ -1,5 +1,5 @@
-CCFormat (containers.CCFormat)
val ksprintf : (string ->'a)->('b, unit, string, 'a) Stdlib.format4->'b
val kasprintf : (string ->'a)->('b, formatter, unit, 'a) Stdlib.format4->'b
val bprintf : Stdlib.Buffer.t ->('a, formatter, unit) Stdlib.format->'a
val kprintf : (string ->'a)->('b, unit, string, 'a) Stdlib.format4->'b
val set_all_formatter_output_functions : out:(string -> int -> int -> unit)->flush:(unit -> unit)->newline:(unit -> unit)->spaces:(int -> unit)-> unit
val get_all_formatter_output_functions : unit ->(string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit)
val pp_set_all_formatter_output_functions : formatter->out:(string -> int -> int -> unit)->flush:(unit -> unit)->newline:(unit -> unit)->spaces:(int -> unit)-> unit
val pp_get_all_formatter_output_functions : formatter-> unit ->(string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit)
string_lines out s prints s with all newlines ('\n') replaced by a cut, in a vertical box. It does NOT insert breakable spaces in place of spaces, unlike text. This means an already formatted string can be displayed inside another formatter without mangling the indentation.
val ksprintf : (string ->'a)->('b, unit, string, 'a) Stdlib.format4->'b
val kasprintf : (string ->'a)->('b, formatter, unit, 'a) Stdlib.format4->'b
val bprintf : Stdlib.Buffer.t ->('a, formatter, unit) Stdlib.format->'a
val kprintf : (string ->'a)->('b, unit, string, 'a) Stdlib.format4->'b
val set_all_formatter_output_functions : out:(string -> int -> int -> unit)->flush:(unit -> unit)->newline:(unit -> unit)->spaces:(int -> unit)-> unit
val get_all_formatter_output_functions : unit ->(string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit)
val pp_set_all_formatter_output_functions : formatter->out:(string -> int -> int -> unit)->flush:(unit -> unit)->newline:(unit -> unit)->spaces:(int -> unit)-> unit
val pp_get_all_formatter_output_functions : formatter-> unit ->(string -> int -> int -> unit) * (unit -> unit) * (unit -> unit) * (int -> unit)
string_lines out s prints s with all newlines ('\n') replaced by a cut, in a vertical box. It does NOT insert breakable spaces in place of spaces, unlike text. This means an already formatted string can be displayed inside another formatter without mangling the indentation.
Add functions to support color tags to the given formatter.
since
0.15
val set_color_default : bool -> unit
set_color_default b enables color handling on the standard formatters (stdout, stderr) if b = true as well as on sprintf formatters; it disables the color handling if b = false.
val with_out_chan : Stdlib.out_channel ->(t->'a)->'a
with_out_chan oc f turns oc into a formatter fmt, and call f fmt. Behaves like f fmt from then on, but whether the call to f fails or returns, fmt is flushed before the call terminates.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_iter : ('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aiter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aiter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
+Poly (containers.CCHashtbl.Poly)
Module CCHashtbl.Poly
val get : ('a, 'b) Stdlib.Hashtbl.t->'a->'b option
get tbl k finds a binding for the key k if present, or returns None if no value is found. Safe version of Hashtbl.find.
val get_or : ('a, 'b) Stdlib.Hashtbl.t->'a->default:'b->'b
get_or tbl k ~default returns the value associated to k if present, and returns default otherwise (if k doesn't belong in tbl).
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_iter : ('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aiter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aiter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
diff --git a/dev/containers/CCHashtbl/index.html b/dev/containers/CCHashtbl/index.html
index ae927f96..a19a4817 100644
--- a/dev/containers/CCHashtbl/index.html
+++ b/dev/containers/CCHashtbl/index.html
@@ -1,2 +1,2 @@
-CCHashtbl (containers.CCHashtbl)
Module CCHashtbl
Extension to the standard Hashtbl
since
0.4
type'a iter = ('a-> unit)-> unit
Fast internal iterator.
since
2.8
type'a eq = 'a->'a-> bool
type'a hash = 'a-> int
type'a printer = Stdlib.Format.formatter ->'a-> unit
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_iter : ('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aiter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aiter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_iter : ('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aiter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aiter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
module Make : functor (X : Stdlib.Hashtbl.HashedType) ->SwithtypeMake.key = X.t andtype'a Make.t = 'a Stdlib.Hashtbl.Make(X).t
\ No newline at end of file
diff --git a/dev/containers/CCHashtbl/module-type-S/index.html b/dev/containers/CCHashtbl/module-type-S/index.html
index 16355699..06af019a 100644
--- a/dev/containers/CCHashtbl/module-type-S/index.html
+++ b/dev/containers/CCHashtbl/module-type-S/index.html
@@ -1,2 +1,2 @@
-S (containers.CCHashtbl.S)
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:(key->'a->'a->'a)->'at->(key * 'a)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
+S (containers.CCHashtbl.S)
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:(key->'a->'a->'a)->'at->(key * 'a)iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
diff --git a/dev/containers/CCList/index.html b/dev/containers/CCList/index.html
index b42eb467..2a427917 100644
--- a/dev/containers/CCList/index.html
+++ b/dev/containers/CCList/index.html
@@ -1,9 +1,9 @@
-CCList (containers.CCList)
Module CCList
Complements to list
type'a iter = ('a-> unit)-> unit
Fast internal iterator.
since
2.8
type'a gen = unit ->'a option
type'a printer = Stdlib.Format.formatter ->'a-> unit
filter p l returns all the elements of the list l that satisfy the predicate p. The order of the elements in the input list l is preserved. Safe version of List.filter.
val fold_map2 : ('acc->'a->'b->'acc * 'c)->'acc->'a list->'b list->'acc * 'c list
fold_map2 f init l1 l2 is to fold_map what List.map2 is to List.map.
raises Invalid_argument
if the lists do not have the same length.
since
0.16
val fold_filter_map : ('acc->'a->'acc * 'b option)->'acc->'a list->'acc * 'b list
fold_filter_map f init l is a fold_left-like function, but also generates a list of output in a way similar to filter_map.
since
0.17
val fold_filter_map_i : ('acc-> int ->'a->'acc * 'b option)->'acc->'a list->'acc * 'b list
fold_filter_map_i f init l is a foldi-like function, but also generates a list of output in a way similar to filter_map.
since
2.8
val fold_flat_map : ('acc->'a->'acc * 'b list)->'acc->'a list->'acc * 'b list
fold_flat_map f init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
0.14
val fold_flat_map_i : ('acc-> int ->'a->'acc * 'b list)->'acc->'a list->'acc * 'b list
fold_flat_map_i f init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
2.8
val count : ('a-> bool)->'a list-> int
count p l counts how many elements of l satisfy predicate p.
since
1.5, but only
since
2.2 with labels
val count_true_false : ('a-> bool)->'a list-> int * int
count_true_false p l returns a pair (int1,int2) where int1 is the number of elements in l that satisfy the predicate p, and int2 the number of elements that do not satisfy p.
combine_gen l1 l2 transforms two lists into a gen of pairs. Lazy version of combine. Unlike combine, it does not fail if the lists have different lengths; instead, the output has as many pairs as the smallest input list.
since
1.2, but only
since
2.2 with labels
val combine_shortest : 'a list->'b list->('a * 'b) list
combine_shortest [a1; …; am] [b1; …; bn] is [(a1,b1); …; (am,bm)] if m <= n. Like combine but stops at the shortest list rather than raising.
cartesian_product [[l1]; [l2]; …; [ln]] produces the cartesian product of this list of lists, by returning all the ways of picking one element per sublist. NOTE the order of the returned list is unspecified. For example:
filter p l returns all the elements of the list l that satisfy the predicate p. The order of the elements in the input list l is preserved. Safe version of List.filter.
val fold_map2 : ('acc->'a->'b->'acc * 'c)->'acc->'a list->'b list->'acc * 'c list
fold_map2 f init l1 l2 is to fold_map what List.map2 is to List.map.
raises Invalid_argument
if the lists do not have the same length.
since
0.16
val fold_filter_map : ('acc->'a->'acc * 'b option)->'acc->'a list->'acc * 'b list
fold_filter_map f init l is a fold_left-like function, but also generates a list of output in a way similar to filter_map.
since
0.17
val fold_filter_map_i : ('acc-> int ->'a->'acc * 'b option)->'acc->'a list->'acc * 'b list
fold_filter_map_i f init l is a foldi-like function, but also generates a list of output in a way similar to filter_map.
since
2.8
val fold_flat_map : ('acc->'a->'acc * 'b list)->'acc->'a list->'acc * 'b list
fold_flat_map f init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
0.14
val fold_flat_map_i : ('acc-> int ->'a->'acc * 'b list)->'acc->'a list->'acc * 'b list
fold_flat_map_i f init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
2.8
val count : ('a-> bool)->'a list-> int
count p l counts how many elements of l satisfy predicate p.
since
1.5, but only
since
2.2 with labels
val count_true_false : ('a-> bool)->'a list-> int * int
count_true_false p l returns a pair (int1,int2) where int1 is the number of elements in l that satisfy the predicate p, and int2 the number of elements that do not satisfy p.
combine_gen l1 l2 transforms two lists into a gen of pairs. Lazy version of combine. Unlike combine, it does not fail if the lists have different lengths; instead, the output has as many pairs as the smallest input list.
since
1.2, but only
since
2.2 with labels
val combine_shortest : 'a list->'b list->('a * 'b) list
combine_shortest [a1; …; am] [b1; …; bn] is [(a1,b1); …; (am,bm)] if m <= n. Like combine but stops at the shortest list rather than raising.
cartesian_product [[l1]; [l2]; …; [ln]] produces the cartesian product of this list of lists, by returning all the ways of picking one element per sublist. NOTE the order of the returned list is unspecified. For example:
invariant: cartesian_product l = map_product id l.
since
1.2, but only
since
2.2 with labels
val map_product_l : ('a->'b list)->'a list->'b list list
map_product_l f l maps each element of l to a list of objects of type 'b using f. We obtain [l1; l2; …; ln] where length l=n and li : 'b list. Then, it returns all the ways of picking exactly one element per li.
val group_by : ?hash:('a-> int)->?eq:('a->'a-> bool)->'at->'a listt
group_by ?hash ?eq l groups equal elements, regardless of their order of appearance. precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val join : join_row:('a->'b->'c option)->'at->'bt->'ct
join ~join_row a b combines every element of a with every element of b using join_row. If join_row returns None, then the two elements do not combine. Assume that b allows for multiple iterations.
since
2.3
val join_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a->'b->'c option)->'at->'bt->'ct
join_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and combine values (x,y) from (a,b) with the same key using merge. If merge returns None, the combination of values is discarded. precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val join_all_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a list->'b list->'c option)->'at->'bt->'ct
join_all_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and, for each key k occurring in at least one of them:
compute the list l1 of elements of a that map to k
compute the list l2 of elements of b that map to k
call merge k l1 l2. If merge returns None, the combination of values is discarded, otherwise it returns Some c and c is inserted in the result.
since
2.3
val group_join_by : ?eq:('a->'a-> bool)->?hash:('a-> int)->('b->'a)->'at->'bt->('a * 'b list)t
group_join_by ?eq ?hash key la lb associates to every element x of the first sequence, all the elements y of the second sequence such that eq x (key y). Elements of the first sequences without corresponding values in the second one are mapped to [] precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val sublists_of_len : ?last:('a list->'a list option)->?offset:int-> int ->'a list->'a list list
sublists_of_len ?last ?offset n l returns sub-lists of l that have length n. By default, these sub-lists are non overlapping: sublists_of_len 2 [1;2;3;4;5;6] returns [1;2]; [3;4]; [5;6].
the number of elements skipped between two consecutive sub-lists. By default it is n. If offset < n, the sub-lists will overlap; if offset > n, some elements will not appear at all.
parameter last
if provided and the last group of elements g is such that length g < n, last g is called. If last g = Some g', g' is appended; otherwise g is dropped. If last = CCOpt.return, it will simply keep the last group. By default, last = fun _ -> None, i.e. the last group is dropped if shorter than n.
chunks n l returns consecutives chunks of size at most n from l. Each item of l will occur in exactly one chunk. Only the last chunk might be of length smaller than n. Invariant: (chunks n l |> List.flatten) = l.
since
3.2
val intersperse : 'a->'a list->'a list
intersperse x l inserts the element x between adjacent elements of the list l.
since
2.1, but only
since
2.2 with labels
val interleave : 'a list->'a list->'a list
interleave [x1…xn] [y1…ym] is [x1;y1;x2;y2;…] and finishes with the suffix of the longest list.
mguard c is pure () if c is true, [] otherwise. This is useful to define a list by comprehension, e.g.:
# let square_even xs =
+[[1;3;4;5;6];[2;3;4;5;6]];;
invariant: cartesian_product l = map_product id l.
since
1.2, but only
since
2.2 with labels
val map_product_l : ('a->'b list)->'a list->'b list list
map_product_l f l maps each element of l to a list of objects of type 'b using f. We obtain [l1; l2; …; ln] where length l=n and li : 'b list. Then, it returns all the ways of picking exactly one element per li.
val group_by : ?hash:('a-> int)->?eq:('a->'a-> bool)->'at->'a listt
group_by ?hash ?eq l groups equal elements, regardless of their order of appearance. precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val join : join_row:('a->'b->'c option)->'at->'bt->'ct
join ~join_row a b combines every element of a with every element of b using join_row. If join_row returns None, then the two elements do not combine. Assume that b allows for multiple iterations.
since
2.3
val join_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a->'b->'c option)->'at->'bt->'ct
join_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and combine values (x,y) from (a,b) with the same key using merge. If merge returns None, the combination of values is discarded. precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val join_all_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a list->'b list->'c option)->'at->'bt->'ct
join_all_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and, for each key k occurring in at least one of them:
compute the list l1 of elements of a that map to k
compute the list l2 of elements of b that map to k
call merge k l1 l2. If merge returns None, the combination of values is discarded, otherwise it returns Some c and c is inserted in the result.
since
2.3
val group_join_by : ?eq:('a->'a-> bool)->?hash:('a-> int)->('b->'a)->'at->'bt->('a * 'b list)t
group_join_by ?eq ?hash key la lb associates to every element x of the first sequence, all the elements y of the second sequence such that eq x (key y). Elements of the first sequences without corresponding values in the second one are mapped to [] precondition: for any x and y, if eq x y then hash x=hash y must hold.
since
2.3
val sublists_of_len : ?last:('a list->'a list option)->?offset:int-> int ->'a list->'a list list
sublists_of_len ?last ?offset n l returns sub-lists of l that have length n. By default, these sub-lists are non overlapping: sublists_of_len 2 [1;2;3;4;5;6] returns [1;2]; [3;4]; [5;6].
the number of elements skipped between two consecutive sub-lists. By default it is n. If offset < n, the sub-lists will overlap; if offset > n, some elements will not appear at all.
parameter last
if provided and the last group of elements g is such that length g < n, last g is called. If last g = Some g', g' is appended; otherwise g is dropped. If last = CCOpt.return, it will simply keep the last group. By default, last = fun _ -> None, i.e. the last group is dropped if shorter than n.
chunks n l returns consecutives chunks of size at most n from l. Each item of l will occur in exactly one chunk. Only the last chunk might be of length smaller than n. Invariant: (chunks n l |> List.flatten) = l.
since
3.2
val intersperse : 'a->'a list->'a list
intersperse x l inserts the element x between adjacent elements of the list l.
since
2.1, but only
since
2.2 with labels
val interleave : 'a list->'a list->'a list
interleave [x1…xn] [y1…ym] is [x1;y1;x2;y2;…] and finishes with the suffix of the longest list.
filter ~f l returns all the elements of the list l that satisfy the predicate f. The order of the elements in the input list l is preserved. Safe version of List.filter.
val fold_map2 : f:('acc->'a->'b->'acc * 'c)->init:'acc->'a list->'b list->'acc * 'c list
fold_map2 ~f ~init l1 l2 is to fold_map what List.map2 is to List.map.
raises Invalid_argument
if the lists do not have the same length.
since
0.16
val fold_filter_map : f:('acc->'a->'acc * 'b option)->init:'acc->'a list->'acc * 'b list
fold_filter_map ~f ~init l is a fold_left-like function, but also generates a list of output in a way similar to filter_map.
since
0.17
val fold_filter_map_i : f:('acc-> int ->'a->'acc * 'b option)->init:'acc->'a list->'acc * 'b list
fold_filter_map_i ~f ~init l is a foldi-like function, but also generates a list of output in a way similar to filter_map.
since
2.8
val fold_flat_map : f:('acc->'a->'acc * 'b list)->init:'acc->'a list->'acc * 'b list
fold_flat_map ~f ~init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
0.14
val fold_flat_map_i : f:('acc-> int ->'a->'acc * 'b list)->init:'acc->'a list->'acc * 'b list
fold_flat_map_i ~f ~init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
2.8
val count : f:('a-> bool)->'a list-> int
count ~f l counts how many elements of l satisfy predicate f.
since
1.5, but only
since
2.2 with labels
val count_true_false : f:('a-> bool)->'a list-> int * int
count_true_false ~f l returns a pair (int1,int2) where int1 is the number of elements in l that satisfy the predicate f, and int2 the number of elements that do not satisfy f.
combine_gen l1 l2 transforms two lists into a gen of pairs. Lazy version of combine. Unlike combine, it does not fail if the lists have different lengths; instead, the output has as many pairs as the smallest input list.
since
1.2, but only
since
2.2 with labels
val combine_shortest : 'a list->'b list->('a * 'b) list
combine_shortest [a1; …; am] [b1; …; bn] is [(a1,b1); …; (am,bm)] if m <= n. Like combine but stops at the shortest list rather than raising.
cartesian_product [[l1];[l2]; …; [ln]] produces the cartesian product of this list of lists, by returning all the ways of picking one element per sublist. NOTE the order of the returned list is unspecified. For example:
filter ~f l returns all the elements of the list l that satisfy the predicate f. The order of the elements in the input list l is preserved. Safe version of List.filter.
val fold_map2 : f:('acc->'a->'b->'acc * 'c)->init:'acc->'a list->'b list->'acc * 'c list
fold_map2 ~f ~init l1 l2 is to fold_map what List.map2 is to List.map.
raises Invalid_argument
if the lists do not have the same length.
since
0.16
val fold_filter_map : f:('acc->'a->'acc * 'b option)->init:'acc->'a list->'acc * 'b list
fold_filter_map ~f ~init l is a fold_left-like function, but also generates a list of output in a way similar to filter_map.
since
0.17
val fold_filter_map_i : f:('acc-> int ->'a->'acc * 'b option)->init:'acc->'a list->'acc * 'b list
fold_filter_map_i ~f ~init l is a foldi-like function, but also generates a list of output in a way similar to filter_map.
since
2.8
val fold_flat_map : f:('acc->'a->'acc * 'b list)->init:'acc->'a list->'acc * 'b list
fold_flat_map ~f ~init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
0.14
val fold_flat_map_i : f:('acc-> int ->'a->'acc * 'b list)->init:'acc->'a list->'acc * 'b list
fold_flat_map_i ~f ~init l is a fold_left-like function, but it also maps the list to a list of lists that is then flatten'd.
since
2.8
val count : f:('a-> bool)->'a list-> int
count ~f l counts how many elements of l satisfy predicate f.
since
1.5, but only
since
2.2 with labels
val count_true_false : f:('a-> bool)->'a list-> int * int
count_true_false ~f l returns a pair (int1,int2) where int1 is the number of elements in l that satisfy the predicate f, and int2 the number of elements that do not satisfy f.
combine_gen l1 l2 transforms two lists into a gen of pairs. Lazy version of combine. Unlike combine, it does not fail if the lists have different lengths; instead, the output has as many pairs as the smallest input list.
since
1.2, but only
since
2.2 with labels
val combine_shortest : 'a list->'b list->('a * 'b) list
combine_shortest [a1; …; am] [b1; …; bn] is [(a1,b1); …; (am,bm)] if m <= n. Like combine but stops at the shortest list rather than raising.
cartesian_product [[l1];[l2]; …; [ln]] produces the cartesian product of this list of lists, by returning all the ways of picking one element per sublist. NOTE the order of the returned list is unspecified. For example:
invariant: cartesian_product l = map_product id l.
since
1.2, but only
since
2.2 with labels
val map_product_l : f:('a->'b list)->'a list->'b list list
map_product_l ~f l maps each element of l to a list of objects of type 'b using f. We obtain [l1; l2; …; ln] where length l=n and li : 'b list. Then, it returns all the ways of picking exactly one element per li.
val group_by : ?hash:('a-> int)->?eq:('a->'a-> bool)->'at->'a listt
group_by ?hash ?eq l groups equal elements, regardless of their order of appearance. precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val join : join_row:('a->'b->'c option)->'at->'bt->'ct
join ~join_row a b combines every element of a with every element of b using join_row. If join_row returns None, then the two elements do not combine. Assume that b allows for multiple iterations.
since
2.3
val join_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a->'b->'c option)->'at->'bt->'ct
join_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and combine values (x,y) from (a,b) with the same key using merge. If merge returns None, the combination of values is discarded. precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val join_all_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a list->'b list->'c option)->'at->'bt->'ct
join_all_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and, for each key k occurring in at least one of them:
compute the list l1 of elements of a that map to k
compute the list l2 of elements of b that map to k
call merge k l1 l2. If merge returns None, the combination of values is discarded, otherwise it returns Some c and c is inserted in the result.
since
2.3
val group_join_by : ?eq:('a->'a-> bool)->?hash:('a-> int)->('b->'a)->'at->'bt->('a * 'b list)t
group_join_by ?eq ?hash key la lb associates to every element x of the first sequence, all the elements y of the second sequence such that eq x (key y). Elements of the first sequences without corresponding values in the second one are mapped to [] precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val sublists_of_len : ?last:('a list->'a list option)->?offset:int->len:int->'a list->'a list list
sublists_of_len ?last ?offset n l returns sub-lists of l that have length n. By default, these sub-lists are non overlapping: sublists_of_len 2 [1;2;3;4;5;6] returns [1;2]; [3;4]; [5;6].
the number of elements skipped between two consecutive sub-lists. By default it is n. If offset < n, the sub-lists will overlap; if offset > n, some elements will not appear at all.
parameter last
if provided and the last group of elements g is such that length g < n, last g is called. If last g = Some g', g' is appended; otherwise g is dropped. If last = CCOpt.return, it will simply keep the last group. By default, last = fun _ -> None, i.e. the last group is dropped if shorter than n.
chunks n l returns consecutives chunks of size at most n from l. Each item of l will occur in exactly one chunk. Only the last chunk might be of length smaller than n. Invariant: (chunks n l |> List.flatten) = l.
since
3.2
val intersperse : x:'a->'a list->'a list
intersperse ~x l inserts the element x between adjacent elements of the list l.
since
2.1, but only
since
2.2 with labels
val interleave : 'a list->'a list->'a list
interleave [x1…xn] [y1…ym] is [x1,y1,x2,y2,…] and finishes with the suffix of the longest list.
mguard c is pure () if c is true, [] otherwise. This is useful to define a list by comprehension, e.g.:
# let square_even xs =
+[[1;3;4;5;6];[2;3;4;5;6]];;
invariant: cartesian_product l = map_product id l.
since
1.2, but only
since
2.2 with labels
val map_product_l : f:('a->'b list)->'a list->'b list list
map_product_l ~f l maps each element of l to a list of objects of type 'b using f. We obtain [l1; l2; …; ln] where length l=n and li : 'b list. Then, it returns all the ways of picking exactly one element per li.
val group_by : ?hash:('a-> int)->?eq:('a->'a-> bool)->'at->'a listt
group_by ?hash ?eq l groups equal elements, regardless of their order of appearance. precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val join : join_row:('a->'b->'c option)->'at->'bt->'ct
join ~join_row a b combines every element of a with every element of b using join_row. If join_row returns None, then the two elements do not combine. Assume that b allows for multiple iterations.
since
2.3
val join_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a->'b->'c option)->'at->'bt->'ct
join_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and combine values (x,y) from (a,b) with the same key using merge. If merge returns None, the combination of values is discarded. precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val join_all_by : ?eq:('key->'key-> bool)->?hash:('key-> int)->('a->'key)->('b->'key)->merge:('key->'a list->'b list->'c option)->'at->'bt->'ct
join_all_by ?eq ?hash key1 key2 ~merge la lb is a binary operation that takes two sequences a and b, projects their elements resp. with key1 and key2, and, for each key k occurring in at least one of them:
compute the list l1 of elements of a that map to k
compute the list l2 of elements of b that map to k
call merge k l1 l2. If merge returns None, the combination of values is discarded, otherwise it returns Some c and c is inserted in the result.
since
2.3
val group_join_by : ?eq:('a->'a-> bool)->?hash:('a-> int)->('b->'a)->'at->'bt->('a * 'b list)t
group_join_by ?eq ?hash key la lb associates to every element x of the first sequence, all the elements y of the second sequence such that eq x (key y). Elements of the first sequences without corresponding values in the second one are mapped to [] precondition: for any x and y, if eq x y then hash x = hash y must hold.
since
2.3
val sublists_of_len : ?last:('a list->'a list option)->?offset:int->len:int->'a list->'a list list
sublists_of_len ?last ?offset n l returns sub-lists of l that have length n. By default, these sub-lists are non overlapping: sublists_of_len 2 [1;2;3;4;5;6] returns [1;2]; [3;4]; [5;6].
the number of elements skipped between two consecutive sub-lists. By default it is n. If offset < n, the sub-lists will overlap; if offset > n, some elements will not appear at all.
parameter last
if provided and the last group of elements g is such that length g < n, last g is called. If last g = Some g', g' is appended; otherwise g is dropped. If last = CCOpt.return, it will simply keep the last group. By default, last = fun _ -> None, i.e. the last group is dropped if shorter than n.
chunks n l returns consecutives chunks of size at most n from l. Each item of l will occur in exactly one chunk. Only the last chunk might be of length smaller than n. Invariant: (chunks n l |> List.flatten) = l.
since
3.2
val intersperse : x:'a->'a list->'a list
intersperse ~x l inserts the element x between adjacent elements of the list l.
since
2.1, but only
since
2.2 with labels
val interleave : 'a list->'a list->'a list
interleave [x1…xn] [y1…ym] is [x1,y1,x2,y2,…] and finishes with the suffix of the longest list.
get_or k m ~default returns the value associated to k if present, and returns default otherwise (if k doesn't belong in m).
since
0.16
val update : key->('a option->'a option)->'at->'at
update k f m calls f (Some v) if find k m = v, otherwise it calls f None. In any case, if the result is Nonek is removed from m, and if the result is Some v' then add k v' m is returned.
find_first f m where f is a monotonically increasing function, returns the binding of m with the lowest key k such that f k, or raises Not_found if no such key exists. See Map.S.find_first.
since
1.5
val find_first_opt : (key-> bool)->'at->(key * 'a) option
find_first_opt f m where f is a monotonically increasing function, returns an option containing the binding of m with the lowest key k such that f k, or None if no such key exists. Safe version of find_first.
since
1.5
val merge_safe : f:(key->[ `Left of 'a| `Right of 'b| `Both of 'a * 'b ]->'c option)->'at->'bt->'ct
merge_safe ~f a b merges the maps a and b together.
add_seq m seq adds the given Seq.t of bindings to the map m. Like add_list. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t->'at
add_seq ~f m l adds the given seq l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
of_seq seq builds a map from the given Seq.t of bindings. Like of_list. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:(key->'a->'a->'a)->(key * 'a) Stdlib.Seq.t->'at
of_seq_with ~f l builds a map from the given seq l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
add_iter m iter adds the given iter of bindings to the map m. Like add_list.
since
2.8
val add_iter_with : f:(key->'a->'a->'a)->'at->(key * 'a)iter->'at
add_iter ~f m l adds the given iter l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
of_iter iter builds a map from the given iter of bindings. Like of_list.
since
2.8
val of_iter_with : f:(key->'a->'a->'a)->(key * 'a)iter->'at
of_iter_with ~f l builds a map from the given iter l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the iter than v2.
of_list l builds a map from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, only its last binding will be present in the result.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list_with ~f l builds a map from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the list than v2.
add_list m l adds the given list l of bindings to the map m.
since
0.14
val add_list_with : f:(key->'a->'a->'a)->'at->(key * 'a) list->'at
add_list ~f m l adds the given list l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
get_or k m ~default returns the value associated to k if present, and returns default otherwise (if k doesn't belong in m).
since
0.16
val update : key->('a option->'a option)->'at->'at
update k f m calls f (Some v) if find k m = v, otherwise it calls f None. In any case, if the result is Nonek is removed from m, and if the result is Some v' then add k v' m is returned.
find_first f m where f is a monotonically increasing function, returns the binding of m with the lowest key k such that f k, or raises Not_found if no such key exists. See Map.S.find_first.
since
1.5
val find_first_opt : (key-> bool)->'at->(key * 'a) option
find_first_opt f m where f is a monotonically increasing function, returns an option containing the binding of m with the lowest key k such that f k, or None if no such key exists. Safe version of find_first.
since
1.5
val merge_safe : f:(key->[ `Left of 'a| `Right of 'b| `Both of 'a * 'b ]->'c option)->'at->'bt->'ct
merge_safe ~f a b merges the maps a and b together.
add_seq m seq adds the given Seq.t of bindings to the map m. Like add_list. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t->'at
add_seq ~f m l adds the given seq l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
of_seq seq builds a map from the given Seq.t of bindings. Like of_list. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:(key->'a->'a->'a)->(key * 'a) Stdlib.Seq.t->'at
of_seq_with ~f l builds a map from the given seq l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
add_iter m iter adds the given iter of bindings to the map m. Like add_list.
since
2.8
val add_iter_with : f:(key->'a->'a->'a)->'at->(key * 'a)iter->'at
add_iter ~f m l adds the given iter l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
of_iter iter builds a map from the given iter of bindings. Like of_list.
since
2.8
val of_iter_with : f:(key->'a->'a->'a)->(key * 'a)iter->'at
of_iter_with ~f l builds a map from the given iter l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the iter than v2.
of_list l builds a map from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, only its last binding will be present in the result.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list_with ~f l builds a map from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the list than v2.
add_list m l adds the given list l of bindings to the map m.
since
0.14
val add_list_with : f:(key->'a->'a->'a)->'at->(key * 'a) list->'at
add_list ~f m l adds the given list l of bindings to the map m, using f to combine values that have the same key. If a key occurs several times, all its bindings are combined using the function f, with f key v1 v2 being called with v1 occurring later in the seq than v2.
pp ?pp_start ?pp_stop ?pp_arrow ?pp_sep pp_key pp_v m pretty-prints the contents of the map.
\ No newline at end of file
diff --git a/dev/containers/CCSeq/index.html b/dev/containers/CCSeq/index.html
index 9e33bb0b..2beb4fd7 100644
--- a/dev/containers/CCSeq/index.html
+++ b/dev/containers/CCSeq/index.html
@@ -1,2 +1,2 @@
-CCSeq (containers.CCSeq)
uniq eq l returns l but removes consecutive duplicates. Lazy. In other words, if several values that are equal follow one another, only the first of them is kept.
for_all p [a1; ...; an] checks if all elements of the sequence satisfy the predicate p. That is, it returns (p a1) && ... && (p an) for a non-empty list and true if the sequence is empty. It consumes the sequence until it finds an element not satisfying the predicate.
exists p [a1; ...; an] checks if at least one element of the sequence satisfies the predicate p. That is, it returns (p a1) || ... || (p an) for a non-empty sequence and false if the list is empty. It consumes the sequence until it finds an element satisfying the predicate.
pp ~pp_start ~pp_stop ~pp_sep pp_item ppf s formats the sequence s on ppf. Each element is formatted with pp_item, pp_start is called at the beginning, pp_stop is called at the end, pp_sep is called between each elements. By defaults pp_start and pp_stop does nothing and pp_sep defaults to (fun out -> Format.fprintf out ",@ ").
\ No newline at end of file
+CCSeq (containers.CCSeq)
uniq eq l returns l but removes consecutive duplicates. Lazy. In other words, if several values that are equal follow one another, only the first of them is kept.
for_all p [a1; ...; an] checks if all elements of the sequence satisfy the predicate p. That is, it returns (p a1) && ... && (p an) for a non-empty list and true if the sequence is empty. It consumes the sequence until it finds an element not satisfying the predicate.
exists p [a1; ...; an] checks if at least one element of the sequence satisfies the predicate p. That is, it returns (p a1) || ... || (p an) for a non-empty sequence and false if the list is empty. It consumes the sequence until it finds an element satisfying the predicate.
pp ~pp_start ~pp_stop ~pp_sep pp_item ppf s formats the sequence s on ppf. Each element is formatted with pp_item, pp_start is called at the beginning, pp_stop is called at the end, pp_sep is called between each elements. By defaults pp_start and pp_stop does nothing and pp_sep defaults to (fun out -> Format.fprintf out ",@ ").
\ No newline at end of file
diff --git a/dev/containers/CCSexp/Decoder/index.html b/dev/containers/CCSexp/Decoder/index.html
index 7cd15c09..3bdef56e 100644
--- a/dev/containers/CCSexp/Decoder/index.html
+++ b/dev/containers/CCSexp/Decoder/index.html
@@ -1,2 +1,2 @@
-Decoder (containers.CCSexp.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
NEXT_RELEASE
\ No newline at end of file
+Decoder (containers.CCSexp.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
3.3
\ No newline at end of file
diff --git a/dev/containers/CCSexp/Make/Decoder/index.html b/dev/containers/CCSexp/Make/Decoder/index.html
index 39b3d921..29c30f22 100644
--- a/dev/containers/CCSexp/Make/Decoder/index.html
+++ b/dev/containers/CCSexp/Make/Decoder/index.html
@@ -1,2 +1,2 @@
-Decoder (containers.CCSexp.Make.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
NEXT_RELEASE
\ No newline at end of file
+Decoder (containers.CCSexp.Make.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
3.3
\ No newline at end of file
diff --git a/dev/containers/CCSexp/Make/index.html b/dev/containers/CCSexp/Make/index.html
index 6deec805..34f4f67e 100644
--- a/dev/containers/CCSexp/Make/index.html
+++ b/dev/containers/CCSexp/Make/index.html
@@ -1,2 +1,2 @@
-Make (containers.CCSexp.Make)
Module CCSexp.Make
Functorized operations
This builds a parser and printer for S-expressions represented as in the Sexp argument.
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
\ No newline at end of file
diff --git a/dev/containers/CCSexp/index.html b/dev/containers/CCSexp/index.html
index 8ab61aa8..8c5e0966 100644
--- a/dev/containers/CCSexp/index.html
+++ b/dev/containers/CCSexp/index.html
@@ -1,2 +1,2 @@
-CCSexp (containers.CCSexp)
Module CCSexp
Handling S-expressions
since
3.0 moved into containers-core, previously in [containers.sexp]
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
\ No newline at end of file
diff --git a/dev/containers/CCSexp/module-type-S/Decoder/index.html b/dev/containers/CCSexp/module-type-S/Decoder/index.html
index f7ad3975..8305f1ee 100644
--- a/dev/containers/CCSexp/module-type-S/Decoder/index.html
+++ b/dev/containers/CCSexp/module-type-S/Decoder/index.html
@@ -1,2 +1,2 @@
-Decoder (containers.CCSexp.S.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
NEXT_RELEASE
\ No newline at end of file
+Decoder (containers.CCSexp.S.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
3.3
\ No newline at end of file
diff --git a/dev/containers/CCSexp/module-type-S/index.html b/dev/containers/CCSexp/module-type-S/index.html
index 2b363e8d..bbe51ab2 100644
--- a/dev/containers/CCSexp/module-type-S/index.html
+++ b/dev/containers/CCSexp/module-type-S/index.html
@@ -1,2 +1,2 @@
-S (containers.CCSexp.S)
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
\ No newline at end of file
diff --git a/dev/containers/CCSexp_intf/module-type-BASIC_SEXP/index.html b/dev/containers/CCSexp_intf/module-type-BASIC_SEXP/index.html
index 53d8d4b3..d4f9e4bc 100644
--- a/dev/containers/CCSexp_intf/module-type-BASIC_SEXP/index.html
+++ b/dev/containers/CCSexp_intf/module-type-BASIC_SEXP/index.html
@@ -1,2 +1,2 @@
-BASIC_SEXP (containers.CCSexp_intf.BASIC_SEXP)
val match_ : t->atom:(string ->'a)->list:(t list->'a)->'a
\ No newline at end of file
diff --git a/dev/containers/CCSexp_intf/module-type-S/Decoder/index.html b/dev/containers/CCSexp_intf/module-type-S/Decoder/index.html
index 9fce6232..d03b7d22 100644
--- a/dev/containers/CCSexp_intf/module-type-S/Decoder/index.html
+++ b/dev/containers/CCSexp_intf/module-type-S/Decoder/index.html
@@ -1,2 +1,2 @@
-Decoder (containers.CCSexp_intf.S.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
NEXT_RELEASE
\ No newline at end of file
+Decoder (containers.CCSexp_intf.S.Decoder)
Last location for the decoder. In particular, after calling next, this gives the location of the last token used in the result, which is useful in case of error.
since
3.3
\ No newline at end of file
diff --git a/dev/containers/CCSexp_intf/module-type-S/index.html b/dev/containers/CCSexp_intf/module-type-S/index.html
index d7447e76..fc2b6139 100644
--- a/dev/containers/CCSexp_intf/module-type-S/index.html
+++ b/dev/containers/CCSexp_intf/module-type-S/index.html
@@ -1,2 +1,2 @@
-S (containers.CCSexp_intf.S)
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
val parse_chan_gen : Stdlib.in_channel ->tor_errorgen
Parse a channel into a generator of S-expressions.
val parse_chan_list : Stdlib.in_channel ->t listor_error
Parse a S-expression from the given channel. Can read more data than necessary, so don't use this if you need finer-grained control (e.g. to read something else after the S-exp).
val parse_chan_gen : Stdlib.in_channel ->tor_errorgen
Parse a channel into a generator of S-expressions.
val parse_chan_list : Stdlib.in_channel ->t listor_error
\ No newline at end of file
diff --git a/dev/containers/CCString/index.html b/dev/containers/CCString/index.html
index e143ed1b..338c745f 100644
--- a/dev/containers/CCString/index.html
+++ b/dev/containers/CCString/index.html
@@ -1,2 +1,2 @@
-CCString (containers.CCString)
length s returns the length (number of characters) of the given string s.
val blit : t-> int -> Stdlib.Bytes.t -> int -> int -> unit
blit src src_pos dst dst_pos len copies len characters from string src starting at character indice src_pos, to the Bytes sequence dst starting at character indice dst_pos. Like String.blit. Compatible with the -safe-string option.
replace ~which ~sub ~by s replaces some occurrences of sub by by in s.
parameter which
decides whether the occurrences to replace are:
`Left first occurrence from the left (beginning).
`Right first occurrence from the right (end).
`All all occurrences (default).
raises Invalid_argument
if sub = "".
since
0.14
val is_sub : sub:string-> int -> string -> int ->sub_len:int-> bool
is_sub ~sub ~sub_pos s ~pos ~sub_len returns true iff the substring of sub starting at position sub_pos and of length sub_len is a substring of s starting at position pos.
val repeat : string -> int -> string
repeat s n creates a string by repeating the string sn times.
val prefix : pre:string-> string -> bool
prefix ~pre s returns true iff pre is a prefix of s.
val suffix : suf:string-> string -> bool
suffix ~suf s returns true iff suf is a suffix of s.
since
0.7
val chop_prefix : pre:string-> string ->string option
chop_prefix ~pre s removes pre from s if pre really is a prefix of s, returns None otherwise.
since
0.17
val chop_suffix : suf:string-> string ->string option
chop_suffix ~suf s removes suf from s if suf really is a suffix of s, returns None otherwise.
since
0.17
val take : int -> string -> string
take n s keeps only the n first chars of s.
since
0.17
val drop : int -> string -> string
drop n s removes the n first chars of s.
since
0.17
val take_drop : int -> string -> string * string
take_drop n s is take n s, drop n s.
since
0.17
val lines : string ->string list
lines s returns a list of the lines of s (splits along '\n').
unlines_iter iter concatenates all strings of iter, separated with '\n'.
since
3.2
val unlines_seq : string Stdlib.Seq.t-> string
unlines_seq seq concatenates all strings of seq, separated with '\n'.
since
3.2
val set : string -> int -> char -> string
set s i c creates a new string which is a copy of s, except for index i, which becomes c.
raises Invalid_argument
if i is an invalid index.
since
0.12
val iter : (char -> unit)-> string -> unit
iter f s applies function f on each character of s. Alias to String.iter.
since
0.12
val filter_map : (char ->char option)-> string -> string
filter_map f s calls (f a0) (f a1) … (f an) where a0 … an are the characters of s. It returns the string of characters ci such as f ai = Some ci (when f returns None, the corresponding element of s is discarded).
since
0.17
val filter : (char -> bool)-> string -> string
filter f s discards characters of s not satisfying f.
since
0.17
val flat_map : ?sep:string->(char -> string)-> string -> string
flat_map ~sep f s maps each chars of s to a string, then concatenates them all.
parameter sep
optional separator between each generated string.
since
0.12
val for_all : (char -> bool)-> string -> bool
for_all f s is true iff all characters of s satisfy the predicate f.
since
0.12
val exists : (char -> bool)-> string -> bool
exists f s is true iff some character of s satisfy the predicate f.
split_on_char by s splits the string s along the given char by.
since
1.2
val split : by:string-> string ->string list
split ~by s splits the string s along the given string by. Alias to Split.list_cpy.
since
1.2
Utils
val compare_versions : string -> string -> int
compare_versions s1 s2 compares version stringss1 and s2, considering that numbers are above text.
since
0.13
val compare_natural : string -> string -> int
compare_natural s1 s2 is the Natural Sort Order, comparing chunks of digits as natural numbers. https://en.wikipedia.org/wiki/Natural_sort_order
since
1.3
val edit_distance : ?cutoff:int-> string -> string -> int
edit_distance ~cutoff s1 s2 is the edition distance between the two strings s1 and s2. This satisfies the classical distance axioms: it is always positive, symmetric, and satisfies the formula distance s1 s2 + distance s2 s3 >= distance s1 s3.
parameter cutoff
if provided, it's a cap on both the number of iterations, and on the result. (since 3.0). This is useful if you just want to check whether the edit distance is less or equal than 2 (use cutoff of 3).
length s returns the length (number of characters) of the given string s.
val blit : t-> int -> Stdlib.Bytes.t -> int -> int -> unit
blit src src_pos dst dst_pos len copies len characters from string src starting at character indice src_pos, to the Bytes sequence dst starting at character indice dst_pos. Like String.blit. Compatible with the -safe-string option.
replace ~which ~sub ~by s replaces some occurrences of sub by by in s.
parameter which
decides whether the occurrences to replace are:
`Left first occurrence from the left (beginning).
`Right first occurrence from the right (end).
`All all occurrences (default).
raises Invalid_argument
if sub = "".
since
0.14
val is_sub : sub:string-> int -> string -> int ->sub_len:int-> bool
is_sub ~sub ~sub_pos s ~pos ~sub_len returns true iff the substring of sub starting at position sub_pos and of length sub_len is a substring of s starting at position pos.
val repeat : string -> int -> string
repeat s n creates a string by repeating the string sn times.
val prefix : pre:string-> string -> bool
prefix ~pre s returns true iff pre is a prefix of s.
val suffix : suf:string-> string -> bool
suffix ~suf s returns true iff suf is a suffix of s.
since
0.7
val chop_prefix : pre:string-> string ->string option
chop_prefix ~pre s removes pre from s if pre really is a prefix of s, returns None otherwise.
since
0.17
val chop_suffix : suf:string-> string ->string option
chop_suffix ~suf s removes suf from s if suf really is a suffix of s, returns None otherwise.
since
0.17
val take : int -> string -> string
take n s keeps only the n first chars of s.
since
0.17
val drop : int -> string -> string
drop n s removes the n first chars of s.
since
0.17
val take_drop : int -> string -> string * string
take_drop n s is take n s, drop n s.
since
0.17
val lines : string ->string list
lines s returns a list of the lines of s (splits along '\n').
unlines_iter iter concatenates all strings of iter, separated with '\n'.
since
3.2
val unlines_seq : string Stdlib.Seq.t-> string
unlines_seq seq concatenates all strings of seq, separated with '\n'.
since
3.2
val set : string -> int -> char -> string
set s i c creates a new string which is a copy of s, except for index i, which becomes c.
raises Invalid_argument
if i is an invalid index.
since
0.12
val iter : (char -> unit)-> string -> unit
iter f s applies function f on each character of s. Alias to String.iter.
since
0.12
val filter_map : (char ->char option)-> string -> string
filter_map f s calls (f a0) (f a1) … (f an) where a0 … an are the characters of s. It returns the string of characters ci such as f ai = Some ci (when f returns None, the corresponding element of s is discarded).
since
0.17
val filter : (char -> bool)-> string -> string
filter f s discards characters of s not satisfying f.
since
0.17
val flat_map : ?sep:string->(char -> string)-> string -> string
flat_map ~sep f s maps each chars of s to a string, then concatenates them all.
parameter sep
optional separator between each generated string.
since
0.12
val for_all : (char -> bool)-> string -> bool
for_all f s is true iff all characters of s satisfy the predicate f.
since
0.12
val exists : (char -> bool)-> string -> bool
exists f s is true iff some character of s satisfy the predicate f.
split_on_char by s splits the string s along the given char by.
since
1.2
val split : by:string-> string ->string list
split ~by s splits the string s along the given string by. Alias to Split.list_cpy.
since
1.2
Utils
val compare_versions : string -> string -> int
compare_versions s1 s2 compares version stringss1 and s2, considering that numbers are above text.
since
0.13
val compare_natural : string -> string -> int
compare_natural s1 s2 is the Natural Sort Order, comparing chunks of digits as natural numbers. https://en.wikipedia.org/wiki/Natural_sort_order
since
1.3
val edit_distance : ?cutoff:int-> string -> string -> int
edit_distance ~cutoff s1 s2 is the edition distance between the two strings s1 and s2. This satisfies the classical distance axioms: it is always positive, symmetric, and satisfies the formula distance s1 s2 + distance s2 s3 >= distance s1 s3.
parameter cutoff
if provided, it's a cap on both the number of iterations, and on the result. (since 3.0). This is useful if you just want to check whether the edit distance is less or equal than 2 (use cutoff of 3).
\ No newline at end of file
diff --git a/dev/containers/CCStringLabels/index.html b/dev/containers/CCStringLabels/index.html
index 37ed8fde..08badb57 100644
--- a/dev/containers/CCStringLabels/index.html
+++ b/dev/containers/CCStringLabels/index.html
@@ -1,2 +1,2 @@
-CCStringLabels (containers.CCStringLabels)
length s returns the length (number of characters) of the given string s.
val blit : src:t->src_pos:int->dst:Stdlib.Bytes.t->dst_pos:int->len:int-> unit
blit ~src ~src_pos ~dst ~dst_pos ~len copies len characters from string src starting at character indice src_pos, to the Bytes sequence dst starting at character indice dst_pos. Like String.blit. Compatible with the -safe-string option.
replace ?which ~sub ~by s replaces some occurrences of sub by by in s.
parameter which
decides whether the occurrences to replace are:
`Left first occurrence from the left (beginning).
`Right first occurrence from the right (end).
`All all occurrences (default).
raises Invalid_argument
if sub = "".
since
0.14
val is_sub : sub:string->sub_pos:int-> string ->pos:int->sub_len:int-> bool
is_sub ~sub ~sub_pos s ~pos ~sub_len returns true iff the substring of sub starting at position sub_pos and of length sub_len is a substring of s starting at position pos.
val repeat : string -> int -> string
repeat s n creates a string by repeating the string sn times.
val prefix : pre:string-> string -> bool
prefix ~pre s returns true iff pre is a prefix of s.
val suffix : suf:string-> string -> bool
suffix ~suf s returns true iff suf is a suffix of s.
since
0.7
val chop_prefix : pre:string-> string ->string option
chop_prefix ~pre s removes pre from s if pre really is a prefix of s, returns None otherwise.
since
0.17
val chop_suffix : suf:string-> string ->string option
chop_suffix ~suf s removes suf from s if suf really is a suffix of s, returns None otherwise.
since
0.17
val take : int -> string -> string
take n s keeps only the n first chars of s.
since
0.17
val drop : int -> string -> string
drop n s removes the n first chars of s.
since
0.17
val take_drop : int -> string -> string * string
take_drop n s is take n s, drop n s.
since
0.17
val lines : string ->string list
lines s returns a list of the lines of s (splits along '\n').
unlines_iter iter concatenates all strings of iter, separated with '\n'.
since
3.2
val unlines_seq : string Stdlib.Seq.t-> string
unlines_seq seq concatenates all strings of seq, separated with '\n'.
since
3.2
val set : string -> int -> char -> string
set s i c creates a new string which is a copy of s, except for index i, which becomes c.
raises Invalid_argument
if i is an invalid index.
since
0.12
val iter : f:(char -> unit)-> string -> unit
iter ~f s applies function f on each character of s. Alias to String.iter.
since
0.12
val filter_map : f:(char ->char option)-> string -> string
filter_map ~f s calls (f a0) (f a1) … (f an) where a0 … an are the characters of s. It returns the string of characters ci such as f ai = Some ci (when f returns None, the corresponding element of s is discarded).
since
0.17
val filter : f:(char -> bool)-> string -> string
filter ~f s discards characters of s not satisfying f.
since
0.17
val flat_map : ?sep:string->f:(char -> string)-> string -> string
flat_map ?sep ~f s maps each chars of s to a string, then concatenates them all.
parameter sep
optional separator between each generated string.
since
0.12
val for_all : f:(char -> bool)-> string -> bool
for_all ~f s is true iff all characters of s satisfy the predicate f.
since
0.12
val exists : f:(char -> bool)-> string -> bool
exists ~f s is true iff some character of s satisfy the predicate f.
val split_on_char : by:char-> string ->string list
split_on_char ~by s splits the string s along the given char by.
since
1.2
val split : by:string-> string ->string list
split ~by s splits the string s along the given string by. Alias to Split.list_cpy.
since
1.2
Utils
val compare_versions : string -> string -> int
compare_versions s1 s2 compares version stringss1 and s2, considering that numbers are above text.
since
0.13
val compare_natural : string -> string -> int
compare_natural s1 s2 is the Natural Sort Order, comparing chunks of digits as natural numbers. https://en.wikipedia.org/wiki/Natural_sort_order
since
1.3
val edit_distance : ?cutoff:int-> string -> string -> int
edit_distance ?cutoff s1 s2 is the edition distance between the two strings s1 and s2. This satisfies the classical distance axioms: it is always positive, symmetric, and satisfies the formula distance s1 s2 + distance s2 s3 >= distance s1 s3.
parameter cutoff
if provided, it's a cap on both the number of iterations, and on the result. (since 3.0). This is useful if you just want to check whether the edit distance is less or equal than 2 (use cutoff of 3).
length s returns the length (number of characters) of the given string s.
val blit : src:t->src_pos:int->dst:Stdlib.Bytes.t->dst_pos:int->len:int-> unit
blit ~src ~src_pos ~dst ~dst_pos ~len copies len characters from string src starting at character indice src_pos, to the Bytes sequence dst starting at character indice dst_pos. Like String.blit. Compatible with the -safe-string option.
replace ?which ~sub ~by s replaces some occurrences of sub by by in s.
parameter which
decides whether the occurrences to replace are:
`Left first occurrence from the left (beginning).
`Right first occurrence from the right (end).
`All all occurrences (default).
raises Invalid_argument
if sub = "".
since
0.14
val is_sub : sub:string->sub_pos:int-> string ->pos:int->sub_len:int-> bool
is_sub ~sub ~sub_pos s ~pos ~sub_len returns true iff the substring of sub starting at position sub_pos and of length sub_len is a substring of s starting at position pos.
val repeat : string -> int -> string
repeat s n creates a string by repeating the string sn times.
val prefix : pre:string-> string -> bool
prefix ~pre s returns true iff pre is a prefix of s.
val suffix : suf:string-> string -> bool
suffix ~suf s returns true iff suf is a suffix of s.
since
0.7
val chop_prefix : pre:string-> string ->string option
chop_prefix ~pre s removes pre from s if pre really is a prefix of s, returns None otherwise.
since
0.17
val chop_suffix : suf:string-> string ->string option
chop_suffix ~suf s removes suf from s if suf really is a suffix of s, returns None otherwise.
since
0.17
val take : int -> string -> string
take n s keeps only the n first chars of s.
since
0.17
val drop : int -> string -> string
drop n s removes the n first chars of s.
since
0.17
val take_drop : int -> string -> string * string
take_drop n s is take n s, drop n s.
since
0.17
val lines : string ->string list
lines s returns a list of the lines of s (splits along '\n').
unlines_iter iter concatenates all strings of iter, separated with '\n'.
since
3.2
val unlines_seq : string Stdlib.Seq.t-> string
unlines_seq seq concatenates all strings of seq, separated with '\n'.
since
3.2
val set : string -> int -> char -> string
set s i c creates a new string which is a copy of s, except for index i, which becomes c.
raises Invalid_argument
if i is an invalid index.
since
0.12
val iter : f:(char -> unit)-> string -> unit
iter ~f s applies function f on each character of s. Alias to String.iter.
since
0.12
val filter_map : f:(char ->char option)-> string -> string
filter_map ~f s calls (f a0) (f a1) … (f an) where a0 … an are the characters of s. It returns the string of characters ci such as f ai = Some ci (when f returns None, the corresponding element of s is discarded).
since
0.17
val filter : f:(char -> bool)-> string -> string
filter ~f s discards characters of s not satisfying f.
since
0.17
val flat_map : ?sep:string->f:(char -> string)-> string -> string
flat_map ?sep ~f s maps each chars of s to a string, then concatenates them all.
parameter sep
optional separator between each generated string.
since
0.12
val for_all : f:(char -> bool)-> string -> bool
for_all ~f s is true iff all characters of s satisfy the predicate f.
since
0.12
val exists : f:(char -> bool)-> string -> bool
exists ~f s is true iff some character of s satisfy the predicate f.
val split_on_char : by:char-> string ->string list
split_on_char ~by s splits the string s along the given char by.
since
1.2
val split : by:string-> string ->string list
split ~by s splits the string s along the given string by. Alias to Split.list_cpy.
since
1.2
Utils
val compare_versions : string -> string -> int
compare_versions s1 s2 compares version stringss1 and s2, considering that numbers are above text.
since
0.13
val compare_natural : string -> string -> int
compare_natural s1 s2 is the Natural Sort Order, comparing chunks of digits as natural numbers. https://en.wikipedia.org/wiki/Natural_sort_order
since
1.3
val edit_distance : ?cutoff:int-> string -> string -> int
edit_distance ?cutoff s1 s2 is the edition distance between the two strings s1 and s2. This satisfies the classical distance axioms: it is always positive, symmetric, and satisfies the formula distance s1 s2 + distance s2 s3 >= distance s1 s3.
parameter cutoff
if provided, it's a cap on both the number of iterations, and on the result. (since 3.0). This is useful if you just want to check whether the edit distance is less or equal than 2 (use cutoff of 3).
\ No newline at end of file
diff --git a/dev/containers/Containers/Hashtbl/index.html b/dev/containers/Containers/Hashtbl/index.html
index 2ea8863c..1873d8aa 100644
--- a/dev/containers/Containers/Hashtbl/index.html
+++ b/dev/containers/Containers/Hashtbl/index.html
@@ -1,2 +1,2 @@
-Hashtbl (containers.Containers.Hashtbl)
keys tbl f iterates on keys (similar order as Hashtbl.iter).
val values : ('a, 'b) Stdlib.Hashtbl.t->'bCCHashtbl.iter
values tbl f iterates on values in the table tbl.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_iter : ('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aCCHashtbl.iter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aCCHashtbl.iter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
keys tbl f iterates on keys (similar order as Hashtbl.iter).
val values : ('a, 'b) Stdlib.Hashtbl.t->'bCCHashtbl.iter
values tbl f iterates on values in the table tbl.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_iter : ('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aCCHashtbl.iter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aCCHashtbl.iter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
\ No newline at end of file
diff --git a/dev/containers/Containers/Hashtbl/module-type-S'/index.html b/dev/containers/Containers/Hashtbl/module-type-S'/index.html
index f5825b5e..dc5e1f27 100644
--- a/dev/containers/Containers/Hashtbl/module-type-S'/index.html
+++ b/dev/containers/Containers/Hashtbl/module-type-S'/index.html
@@ -1,2 +1,2 @@
-S' (containers.Containers.Hashtbl.S')
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
+S' (containers.Containers.Hashtbl.S')
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
diff --git a/dev/containers/ContainersLabels/Hashtbl/index.html b/dev/containers/ContainersLabels/Hashtbl/index.html
index 2374a0c9..61c1d6c4 100644
--- a/dev/containers/ContainersLabels/Hashtbl/index.html
+++ b/dev/containers/ContainersLabels/Hashtbl/index.html
@@ -1,2 +1,2 @@
-Hashtbl (containers.ContainersLabels.Hashtbl)
keys tbl f iterates on keys (similar order as Hashtbl.iter).
val values : ('a, 'b) Stdlib.Hashtbl.t->'bCCHashtbl.iter
values tbl f iterates on values in the table tbl.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_iter : ('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aCCHashtbl.iter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aCCHashtbl.iter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
keys tbl f iterates on keys (similar order as Hashtbl.iter).
val values : ('a, 'b) Stdlib.Hashtbl.t->'bCCHashtbl.iter
values tbl f iterates on values in the table tbl.
val keys_list : ('a, 'b) Stdlib.Hashtbl.t->'a list
keys_list tbl is the list of keys in tbl. If the key is in the Hashtable multiple times, all occurrences will be returned.
since
0.8
val values_list : ('a, 'b) Stdlib.Hashtbl.t->'b list
values_list tbl is the list of values in tbl.
since
0.8
val map_list : ('a->'b->'c)->('a, 'b) Stdlib.Hashtbl.t->'c list
map_list f tbl maps on a tbl's items. Collect into a list.
val incr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
since
0.16
val decr : ?by:int->('a, int) Stdlib.Hashtbl.t->'a-> unit
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
since
0.16
val to_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter
Iterate on bindings in the table.
since
2.8
val add_list : ('a, 'b list) Stdlib.Hashtbl.t->'a->'b-> unit
add_list tbl x y adds y to the list x is bound to. If x is not bound, it becomes bound to y.
since
0.16
val add_iter : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add.
since
2.8
val add_iter_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b)CCHashtbl.iter-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_seq : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:('a->'b->'b->'b)->('a, 'b) Stdlib.Hashtbl.t->('a * 'b) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_iter : ('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order.
since
2.8
val of_iter_with : f:('a->'b->'b->'b)->('a * 'b)CCHashtbl.iter->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val of_seq : ('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. Renamed from of_std_seq since 3.0.
since
3.0
val of_seq_with : f:('a->'b->'b->'b)->('a * 'b) Stdlib.Seq.t->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val add_iter_count : ('a, int) Stdlib.Hashtbl.t->'aCCHashtbl.iter-> unit
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : ('a, int) Stdlib.Hashtbl.t->'a Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from add_std_seq_count since 3.0.
since
3.0
val of_iter_count : 'aCCHashtbl.iter->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it.
since
2.8
val of_seq_count : 'a Stdlib.Seq.t->('a, int) Stdlib.Hashtbl.t
Like add_seq_count, but allocates a new table and returns it. Renamed from of_std_seq_count since 3.0.
since
3.0
val to_list : ('a, 'b) Stdlib.Hashtbl.t->('a * 'b) list
to_list tbl returns the list of (key,value) bindings (order unspecified).
val of_list : ('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:('a->'b->'b->'b)->('a * 'b) list->('a, 'b) Stdlib.Hashtbl.t
From the given bindings, added in order. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b option->'b option)->k:'a-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
since
0.14
val get_or_add : ('a, 'b) Stdlib.Hashtbl.t->f:('a->'b)->k:'a->'b
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
\ No newline at end of file
diff --git a/dev/containers/ContainersLabels/Hashtbl/module-type-S'/index.html b/dev/containers/ContainersLabels/Hashtbl/module-type-S'/index.html
index d8bc99ab..94b5c1a5 100644
--- a/dev/containers/ContainersLabels/Hashtbl/module-type-S'/index.html
+++ b/dev/containers/ContainersLabels/Hashtbl/module-type-S'/index.html
@@ -1,2 +1,2 @@
-S' (containers.ContainersLabels.Hashtbl.S')
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
NEXT_RELEASE
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
+S' (containers.ContainersLabels.Hashtbl.S')
incr ?by tbl x increments or initializes the counter associated with x. If get tbl x = None, then after update, get tbl x = Some 1; otherwise, if get tbl x = Some n, now get tbl x = Some (n+1).
parameter by
if specified, the int value is incremented by by rather than 1.
decr ?by tbl x is like incr but subtract 1 (or the value of by). If the value reaches 0, the key is removed from the table. This does nothing if the key is not already present in the table.
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
Add the corresponding pairs to the table, using Hashtbl.add. Renamed from add_std_seq since 3.0.
since
3.0
val add_seq_with : f:(key->'a->'a->'a)->'at->(key * 'a) Stdlib.Seq.t-> unit
Add the corresponding pairs to the table, using Hashtbl.add. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
add_iter_count tbl i increments the count of each element of i by calling incr. This is useful for counting how many times each element of i occurs.
since
2.8
val add_seq_count : int t->key Stdlib.Seq.t-> unit
add_seq_count tbl seq increments the count of each element of seq by calling incr. This is useful for counting how many times each element of seq occurs. Renamed from of_std_seq_count since 3.0.
of_list l builds a table from the given list l of bindings k_i -> v_i, added in order using add. If a key occurs several times, it will be added several times, and the visible binding will be the last one.
val of_list_with : f:(key->'a->'a->'a)->(key * 'a) list->'at
of_list l builds a table from the given list l of bindings k_i -> v_i. If a key occurs multiple times in the input, the values are combined using f in an unspecified order.
since
3.3
val update : 'at->f:(key->'a option->'a option)->k:key-> unit
update tbl ~f ~k updates key k by calling f k (Some v) if k was mapped to v, or f k None otherwise; if the call returns None then k is removed/stays removed, if the call returns Some v' then the binding k -> v' is inserted using Hashtbl.replace.
get_or_add tbl ~k ~f finds and returns the binding of k in tbl, if it exists. If it does not exist, then f k is called to obtain a new binding v; k -> v is added to tbl and v is returned.
pp ~pp_start ~pp_stop ~pp_sep ~pp arrow pp_k pp_v returns a table printer given a pp_k printer for individual key and a pp_v printer for individual value. pp_start and pp_stop control the opening and closing delimiters, by default print nothing. pp_sep control the separator between binding. pp_arrow control the arrow between the key and value. Renamed from print since 2.0.
since
0.13
\ No newline at end of file
diff --git a/dev/index.html b/dev/index.html
index c0e93dbc..827886ce 100644
--- a/dev/index.html
+++ b/dev/index.html
@@ -11,9 +11,9 @@