package ocp-index
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=f5e0bba2b6bbdf5489f313e3c3dcdbec
sha512=82618bef74f00474dc909c01e4ba8f8e235fc420d99a1fe0bf6508745d3f0a75a0b0c25c43e89ae01aa7fb86eae667ff0e0498216881022f900d050541f7a8b5
doc/ocp-index.lib/IndexTrie/index.html
Module IndexTrie
This module defines a generic data structure: Lazy tries based on lists
val empty : ('a, 'b) tCreate a new trie with the given components
val mem : ('a, 'b) t -> 'a list -> boolReturns true if there is a value associated with the given path
val find : ('a, 'b) t -> 'a list -> 'bReturns the value associated with the given path.
val find_all : ('a, 'b) t -> 'a list -> 'b listReturns all values associated with the given path, most recent first.
Associates a value with the given path, or replaces if there was already one
Associates a value with the given path, keeping previous bindings
Removes all associations to a given key from the trie. Warning: doesn't cleanup branches that don't point to anything anymore
map_subtree tree path f applies f on value and children of the node found at path in tree, and bind the returned node back at that position in the tree
val iter : ('a list -> 'b -> unit) -> ('a, 'b) t -> unititers over all the bindings in the trie, top-down
val fold : ('acc -> 'a list -> 'b -> 'acc) -> ('a, 'b) t -> 'acc -> 'accfolds over all bindings of the trie, bottom-up
val fold0 : ('acc -> 'a list -> 'b list -> 'acc) -> ('a, 'b) t -> 'acc -> 'accsame as fold, but the list of bindings at a given path is given at once
sub t p returns the sub-trie associated with the path p in the trie t. If p is not a valid path of t, it returns an empty trie.
filter f t returns t with all subtrees for which f key = false pruned
graft tree path subtree grafts the children of subtree in tree at path, replacing the whole subtree
Merges two tries, accepting an optional function to resolve value conflicts. The default function pushes right-hand values on top of left-hand ones