package containers-data
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=c94fba0c7c54349b7021c31f85120495197ddde438c574d48362ec669bf7e564
sha512=b33588d9df66a858083616cc70cd82822cecc2dcec8902759e72648e5c41c887556da0a28317f388d34afe319309c20dd8baa7508d003dddff00e83869fad861
doc/containers-data/CCPersistentArray/index.html
Module CCPersistentArray
Source
Persistent Arrays
From the paper by Jean-Christophe Filliâtre, "A persistent Union-Find data structure", see the ps version
The type of persistent arrays
make n x
returns a persistent array of length n, with x
. All the elements of this new array are initially physically equal to x (in the sense of the == predicate). Consequently, if x is mutable, it is shared among all elements of the array, and modifying x through one of the array entries will modify all other entries at the same time.
init n f
returns a persistent array of length n, with element i
initialized to the result of f i
.
Apply the given function to all elements of the array, and return a persistent array initialized by the results of f. In the case of mapi
, the function is also given the index of the element. It is equivalent to fun f t -> init (fun i -> f (get t i))
.
iter f t
applies function f
to all elements of the persistent array, in order from element 0
to element length t - 1
.
of_list l
returns a fresh persistent array containing the elements of l
.
of_rev_list l
is the same as of_list (List.rev l)
but more efficient.