Crate microkelvin[][src]

Expand description

Microkelvin

A library for dealing with tree-shaped data. It has three parts:

Compound, a trait for a generic way to implement tree structures Annotation, a trait for annotated subtrees used for searching Branch and BranchMut, types for representing branches in tree-formed data as well as methods of search.

Structs

An iterator over the sub-annotations of a Compound collection

Reprents an immutable branch view into a collection.

Reprents a branch view into a collection.

The cardinality of a compound collection

Walker to find the maximum key in the collection

Walker that visits all leaves

A branch that applies a map to its leaf

A BranchMut with a mapped leaf

Walker method to find the nth element of a compound collection

Portal

Memory backend that never re-allocates

Enums

A wrapped annotation that is either owning it’s a or providing an annotated link

A wrapper around the actual type, or the archived version

The response of the child method on a Compound node.

The response of the child method on a Compound node.

The response of the child_mut method on a Compound node.

The Link struct is an annotated merkle link to a compound type

The maximum value of a collection

A slot in a datastructure type C

The return value from a closure to walk the tree.

Traits

The trait defining an annotation type over a leaf

Trait to support branch traversal in archived nodes

Trait for defining how to combine Annotations

A type that can recursively contain itself and leaves.

Trait for getting the key from a Leaf value

Marker trait to signal that a datastructre can allow mutable access to its leaves.

Helper trait to constrain deserializers used with Storage;

Marker trait for types that have themselves as archived type

Trait used in walking trees

Helper trait to constrain serializers used with Storage;

The trait used to construct a Branch or to iterate through a tree.