Trait adapton::catalog::collections::TreeIntro [] [src]

pub trait TreeIntro<Lev: Level, Leaf>: Debug + Hash + PartialEq + Eq + Clone + 'static {
    fn nil() -> Self;
fn leaf(_: Leaf) -> Self;
fn bin(_: Lev, _: Self, _: Self) -> Self;
fn name(_: Name, _: Lev, _: Self, _: Self) -> Self;
fn art(_: Art<Self>) -> Self; }

Types that can be created like a (binary) tree with leaves of type Leaf are TreeIntro<Leaf>. We recognize that monoids are a nearly-analogous case; the key differences with monoids are that trees contain names (see name fn) and articulations (see art fn); further, the binary cases name and bin carry levels of type Lev, which helps establish and maintain balance.

Required Methods

Implementors