panoradix
My take on implementing a Radix tree, for usage when large data mappings with slices as indices.
What's in this repo?
Both are backed by a Radix tree.
Any slice of elements that are Ord + Eq + Clone
can be used as keys, as well
as str
that are taken as byte slices. Any lookups are done using a &[T]
and
iteration will yield an owned Vec<T>
each time (for str
it will yield
String
items).
Further extension of keys is possible but not recommended since the keys are
arguably always a [T]
. If you really want to do this, have a look at the
ExtensibleKey
trait.
Examples
Insert / Lookup
let mut map: = new;
map.insert;
map.insert;
assert_eq!;
assert_eq!;
assert_eq!;
Removal
let v = vec!;
let mut set: = from_iter;
set.remove;
assert!;
assert!;
Completion
let v = vec!;
let set: = from_iter;
assert_eq!;
Contributing
I try to maintain a list of things that need to be worked on over here. Issues / PRs are always welcome!