include S with type hash = S.hash and type step = S.step and type metadata = S.metadata
type metadata = S.metadataThe type for node metadata.
type hash = S.hashThe type for keys.
type step = S.stepThe type for steps between nodes.
The type for either (node) keys or (contents) keys combined with their metadata.
val empty : tempty is the empty node.
find t s is the value associated with s in t.
A node can point to user-defined contents. The edge between the node and the contents is labeled by a step.
add t s v is the node where find t v is Some s but is similar to t otherwise.
remove t s is the node where find t s is None but is similar to t otherwise.
Value types
val default : metadatadefault is the default metadata value.