Struct iodyn::raz::RazTree [] [src]

pub struct RazTree<E: 'static + Debug + Clone + Eq + Hash, M: RazMeta<E> + 'static> { /* fields omitted */ }

Tree form of a RAZ

used between refocusing, and for running global algorithms

Methods

impl<E: Debug + Clone + Eq + Hash + 'static, M: RazMeta<E>> RazTree<E, M>
[src]

get the meta data

create a new RazTree with no data

Combine two trees left to right

returns None if either tree is empty.

Make a RazTree from a Vec

This tree will contain no levels or names Returns None if the Vec is empty

Runs an incremental binary function over the sequence data

This is calculated from data in leaves of a tree structure, so the operation must be associative. Returns None if there are no elements.

Runs an incremental binary function over the sequence data, levels, and names

This is calculated from data in leaves of a tree structure, so the operation must be associative. Returns None if there are no elements.

Runs an incremental binary function over subsequences, levels, and names

Subsequences allow potential for optimization. The binary function still operates on the results from the subsequence conputation.

Runs an incremental fold over the sequence, left to right

left-to-right memoized fold with levels and names

left-to-right incremental fold with levels and names, with a name provided at the leaf

An incremental mapping of the tree, returning a new tree

focus on a location in the sequence to begin editing.

focus on the first element in the sequence

Trait Implementations

impl<E: Clone + 'static + Debug + Clone + Eq + Hash, M: Clone + RazMeta<E> + 'static> Clone for RazTree<E, M>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<E: PartialEq + 'static + Debug + Clone + Eq + Hash, M: PartialEq + RazMeta<E> + 'static> PartialEq for RazTree<E, M>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<E: Eq + 'static + Debug + Clone + Eq + Hash, M: Eq + RazMeta<E> + 'static> Eq for RazTree<E, M>
[src]

impl<E: Debug + 'static + Debug + Clone + Eq + Hash, M: Debug + RazMeta<E> + 'static> Debug for RazTree<E, M>
[src]

Formats the value using the given formatter.

impl<E: Hash + 'static + Debug + Clone + Eq + Hash, M: Hash + RazMeta<E> + 'static> Hash for RazTree<E, M>
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl<E: Debug + Clone + Eq + Hash + 'static, M: RazMeta<E>> MemoFrom<AtTail<E, u32>> for RazTree<E, M>
[src]

impl<E: Debug + Clone + Eq + Hash + 'static, M: RazMeta<E>> MemoFrom<AtHead<E, u32>> for RazTree<E, M>
[src]