use hashed_array_tree::HashedArrayTree;
fn main() {
let mut array: HashedArrayTree<String> = HashedArrayTree::new();
for _ in 0..2 {
let value = ulid::Ulid::new().to_string();
array.push(value);
}
drop(array);
let mut array: HashedArrayTree<String> = HashedArrayTree::new();
for _ in 0..72 {
let value = ulid::Ulid::new().to_string();
array.push(value);
}
drop(array);
let mut array: HashedArrayTree<String> = HashedArrayTree::new();
for _ in 0..512 {
let value = ulid::Ulid::new().to_string();
array.push(value);
}
while !array.is_empty() {
array.pop();
}
let mut array: HashedArrayTree<String> = HashedArrayTree::new();
let value = ulid::Ulid::new().to_string();
array.push(value);
let itty = array.into_iter();
drop(itty);
let mut array: HashedArrayTree<String> = HashedArrayTree::new();
for _ in 0..256 {
let value = ulid::Ulid::new().to_string();
array.push(value);
}
for (index, value) in array.into_iter().enumerate() {
if index == 24 {
println!("24: {value}");
break;
}
}
let odds = ["one", "three", "five", "seven", "nine"];
let mut array = HashedArrayTree::<String>::new();
for item in odds {
array.push(item.to_owned());
}
let evens = ["two", "four", "six", "eight"];
let mut other = HashedArrayTree::<String>::new();
for item in evens {
other.push(item.to_owned());
}
array.append(&mut other);
let inputs = ["foo", "bar", "Bar", "baz", "bar"];
let mut array = HashedArrayTree::<String>::new();
for item in inputs {
array.push(item.to_owned());
}
array.dedup_by(|a, b| a.eq_ignore_ascii_case(b));
let inputs = ["foo", "bar", "baz", "quux", "one", "two", "tree"];
let mut array = HashedArrayTree::<String>::new();
for item in inputs {
array.push(item.to_owned());
}
let _ = array.split_off(4);
let inputs = ["foo", "bar", "baz", "quux", "one", "two", "tree"];
let mut array = HashedArrayTree::<String>::new();
for item in inputs {
array.push(item.to_owned());
}
array.truncate(4);
println!("hashed array tree tests complete");
}