hamt 0.1.7

Purely functional hash array mapped tries.
Documentation

hamt

:construction: This library is under construction! :construction:

Build Status

Documentation

An implementation of a persistent hash array mapped trie in Rust, based on those found in the unordered-containers Haskell library.

There are four versions of the data structure, HamtRc which is limited to a single thread, and HamtArc which can be freely shared. As well as set versions, HamtSetRc and HamtSetArc.

Examples

extern crate hamt;
use hamt::HamtRc;

let hamt = HamtRc::<isize,isize>::new().insert(&0, &1).insert(&1, &10).insert(&2, &100);
assert!(hamt.get(&1) == Option::Some(&10));

Performance

Unknown :space_invader:.

Planned features

  • Useful functions like union, difference, intersection.