#hash-map #no-std

no-std equivalent

Traits for key comparison in maps

4 releases (stable)

Uses old Rust 2015

1.0.2 Feb 14, 2025
1.0.1 Jul 10, 2023
1.0.0 Jun 6, 2023
0.1.0 Feb 5, 2023

#83 in Data structures

Download history 1539416/week @ 2024-12-20 1545340/week @ 2024-12-27 2432970/week @ 2025-01-03 2840603/week @ 2025-01-10 2674983/week @ 2025-01-17 2790044/week @ 2025-01-24 2951713/week @ 2025-01-31 3143979/week @ 2025-02-07 3454777/week @ 2025-02-14 3852542/week @ 2025-02-21 3982954/week @ 2025-02-28 4181490/week @ 2025-03-07 4283431/week @ 2025-03-14 4858052/week @ 2025-03-21 4087851/week @ 2025-03-28 4320526/week @ 2025-04-04

18,326,752 downloads per month
Used in 36,808 crates (24 directly)

Apache-2.0 OR MIT

8KB

Equivalent

crates.io docs

Equivalent and Comparable are Rust traits for key comparison in maps.

These may be used in the implementation of maps where the lookup type Q may be different than the stored key type K.

  • Q: Equivalent<K> checks for equality, similar to the HashMap<K, V> constraint K: Borrow<Q>, Q: Eq.
  • Q: Comparable<K> checks the ordering, similar to the BTreeMap<K, V> constraint K: Borrow<Q>, Q: Ord.

These traits are not used by the maps in the standard library, but they may add more flexibility in third-party map implementations, especially in situations where a strict K: Borrow<Q> relationship is not available.

License

Equivalent is distributed under the terms of both the MIT license and the Apache License (Version 2.0). See LICENSE-APACHE and LICENSE-MIT for details. Opening a pull request is assumed to signal agreement with these licensing terms.

No runtime deps