plebeia
-
plebeia
-
-
plebeia.msync
-
plebeia.test_utils
-
Library
Module
Module type
Parameter
Class
Class type
val ls : Context.t -> Node_type.node -> (Segment.t * Node_type.node) list
List Leaves and Buds reachable from the node. Buds are not scanned recursively.
The result is sorted by the ordering of Segment.t
.
val ls_rec :
Context.t ->
Node_type.node ->
(Segment.t list * Node_type.node) list
ls_rec context node
lists Leaves recursively reachable from node
. node
must be either a Leaf
or Bud
.
The result is sorted by the ordering of Segment.t
.
val equal :
Context.t ->
Node_type.node ->
Node_type.node ->
( unit, Node_type.node * Node_type.node ) Result.t
XXX only for test ?
val count_nodes : ?upto:int -> Node_type.node -> [> `EQ of int | `GE of int ]
Count the number of nodes under the given node. If 2 nodes have the same index, they are counted as one. If 2 nodes are not indexed, they are counted as two, even if they are shared in the memory.
val count_cells :
?upto:int ->
Context.t ->
Node_type.node ->
[> `EQ of int | `GE of int ]
Roughly count the cells used for the node and its subnodes. The same physical node on disk is counted only once. Non-indexed nodes shared on memory are counted more than once. Links are not counted, since it is not visible in Node_type.node
. The cell counts of big leaves are not very precise, since the structure is not visible in Node_type.node
.