mux-radix-tree 0.1.0

A full-featured radix tree implementation
Documentation
  • Coverage
  • 47.37%
    18 out of 38 items documented0 out of 37 items with examples
  • Size
  • Source code size: 32.02 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.07 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 9s Average build duration of successful builds.
  • all releases: 9s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • mux/radix-tree
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • mux

A Radix Tree implementation. Great attention has been given to performance, but this has not yet been benchmarked, and the test coverage is quite low. Use at your own risk.

Children are represented using a vector, which is fine when the fan-out is low, but might be suboptimal when it isn't. Future versions might provide alternative ways to represent children, such as sorted vectors, sorted lists, or hash maps.

The main type is RadixTree, which maintains a count of the elements in the tree, allowing an O(1) implementation of len. All methods on RadixTreeNode can be used on RadixTree through the Deref and DerefMut implementations.

The API is modeled after the standard HashMap type.

TODO

  • Children should be sorted
  • Add more tests
  • Benchmarks
  • Consuming iterator
  • Entry API