#indexed #set #caching #collection #map

hashindexed

A cache. A set which compares elements in a customisable way without overriding the eq() and hash() functions on the type itself.

2 releases

Uses old Rust 2015

0.1.1 May 10, 2016
0.1.0 Oct 21, 2015

#2251 in Data structures


Used in pippin

MIT license

11KB
156 lines

Hash-indexed collection

You could call this a cache, or a kind of set. It is a simple wrapper around HashSet to allow values of type T to be stored in a set indexed by some type K, where values of type K can be somehow "extracted" from those of type T.

Check documentation on type HashIndexed for usage.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.


lib.rs:

Store a set of values in a data structure indexed by the hash of some user-defined sub-property.

This works like a HashSet<T> with redefined equality and hash function on T, but maintaining the usual definition of equality on T outside the indexing.

See HashIndexed type for usage.

No runtime deps