15 releases

0.7.4 Nov 23, 2024
0.7.3 May 28, 2024
0.7.2 Nov 16, 2023
0.7.0 Apr 13, 2023
0.1.1 Mar 4, 2021

#50 in Data structures

Download history 97691/week @ 2024-08-20 97308/week @ 2024-08-27 112778/week @ 2024-09-03 105384/week @ 2024-09-10 121971/week @ 2024-09-17 155997/week @ 2024-09-24 164775/week @ 2024-10-01 163177/week @ 2024-10-08 160803/week @ 2024-10-15 153513/week @ 2024-10-22 212304/week @ 2024-10-29 777268/week @ 2024-11-05 905366/week @ 2024-11-12 988215/week @ 2024-11-19 1048753/week @ 2024-11-26 1205107/week @ 2024-12-03

4,293,915 downloads per month
Used in 28,393 crates (16 directly)

Unicode-3.0

115KB
2K SLoC

litemap crates.io

litemap

litemap is a crate providing LiteMap, a highly simplistic "flat" key-value map based off of a single sorted vector.

The goal of this crate is to provide a map that is good enough for small sizes, and does not carry the binary size impact of HashMap or BTreeMap.

If binary size is not a concern, std::collections::BTreeMap may be a better choice for your use case. It behaves very similarly to LiteMap for less than 12 elements, and upgrades itself gracefully for larger inputs.

Pluggable Backends

By default, LiteMap is backed by a Vec; however, it can be backed by any appropriate random-access data store, giving that data store a map-like interface. See the store module for more details.

Const construction

LiteMap supports const construction from any store that is const-constructible, such as a static slice, via [LiteMap::from_sorted_store_unchecked()]. This also makes LiteMap suitable for use with databake. See impl Bake for LiteMap for more details.

More Information

For more information on development, authorship, contributing etc. please visit ICU4X home page.

Dependencies

~180KB