Skip to content

Commit

Permalink
provide examples
Browse files Browse the repository at this point in the history
  • Loading branch information
LoZack19 committed Aug 30, 2024
1 parent 8f4f80e commit 95aaf8b
Showing 1 changed file with 28 additions and 0 deletions.
28 changes: 28 additions & 0 deletions examples/simple_tree.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
//! Implements this tree
//! ```
//! 1
//! ├── 2
//! └── 3
//! ├── 4
//! └── 5
//! ```

use ego_tree::{tree, NodeMut, Tree};

fn main() {
// Manual construction of the tree
let mut tree: Tree<i32> = Tree::new(1);
let mut root: NodeMut<i32> = tree.root_mut();
root.append(2);
let mut child: NodeMut<i32> = root.append(3);
child.append(4);
child.append(5);
println!("Manual:\n{tree}");

// Construction of the tree through the tree! macro
let macro_tree: Tree<i32> = tree!(1 => {2, 3 => {4, 5}});
println!("Automated:\n{macro_tree}");

// Prooving equality
assert_eq!(tree, macro_tree);
}

0 comments on commit 95aaf8b

Please sign in to comment.