[−][src]Crate ego_tree
Vec-backed ID-tree.
Behavior
- Trees have at least a root node;
- Nodes have zero or more ordered children;
- Nodes have at most one parent;
- Nodes can be detached (orphaned) but not removed;
- Node parent, next sibling, previous sibling, first child and last child can be accessed in constant time;
- All methods perform in constant time;
- All iterators perform in linear time.
Examples
let mut tree = ego_tree::Tree::new('a'); let mut root = tree.root_mut(); root.append('b'); let mut c = root.append('c'); c.append('d'); c.append('e');
#[macro_use] extern crate ego_tree; let tree = tree!('a' => { 'b', 'c' => { 'd', 'e' } });
Modules
iter | Iterators. |
Macros
tree | Creates a tree from expressions. |
Structs
NodeId | Node ID. |
NodeMut | Node mutator. |
NodeRef | Node reference. |
Tree | Vec-backed ID-tree. |