[][src]Crate microkelvin

Microkelvin

A library for dealing with tree-shaped Canonical 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

Annotated

A wrapper type that keeps the annotation of the Compound referenced cached

Branch

Reprents an immutable branch view into a collection.

BranchMut

Reprents a branch view into a collection.

Cardinality

Annotation to keep track of the cardinality, i.e. the amount of elements of a collection

Level

Represents a level in the branch.

LevelMut

Represents a level in the branch.

Enums

Child

The response of the child method on a Compound node.

ChildMut

The response of the child_mut method on a Compound node.

Max

Annotation to keep track of the largest element of a collection

Step

The return value from a closure to walk the tree.

StepMut

The return value from a closure to walk the tree.

Walk

The argument given to a closure to walk a Branch.

WalkMut

The argument given to a closure to walk a BranchMut.

Traits

Annotation

The main Annotation trait

Compound

Trait for compound datastructures

Nth

Find the nth element of any collection satisfying the given annotation constraints