rs-avl 0.1.1

A generic AVL tree with range queries and traversal iterators
Documentation
use rs_avl::AVLTree;

fn main() {
    let mut tree: AVLTree<_> = [30, 10, 20, 40, 50].into_iter().collect();

    println!("ascending: {:?}", tree.iter().collect::<Vec<_>>());
    println!("descending: {:?}", tree.iter().rev().collect::<Vec<_>>());
    println!(
        "three from 20: {:?}",
        tree.iter_from(&20, 3).collect::<Vec<_>>()
    );
    println!(
        "three to 40: {:?}",
        tree.iter_to(&40, 3).collect::<Vec<_>>()
    );
    println!(
        "range 15..=40: {:?}",
        tree.range(15..=40).collect::<Vec<_>>()
    );

    tree.remove(&30);
    println!("after removing 30: {:?}", tree.iter().collect::<Vec<_>>());
}