-
hashbrown
port of Google's SwissTable hash map
-
indexmap
A hash table with consistent order and fast iteration
-
smallvec
'Small vector' optimization: store up to a small number of items on the stack
-
either
The enum
Either
with variantsLeft
andRight
is a general purpose sum type with two cases -
tinyvec
tinyvec
provides 100% safe vec-like data structures -
serde_derive
Macros 1.1 implementation of #[derive(Serialize, Deserialize)]
-
generic-array
Generic types implementing functionality of arrays
-
equivalent
Traits for key comparison in maps
-
bytes
Types and traits for working with bytes
-
arrayvec
A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.
-
phf_shared
Support code shared by PHF libraries
-
petgraph
Graph data structure library. Provides graph types and graph algorithms.
-
fixedbitset
bitset collection
-
half
Half-precision floating point f16 and bf16 types for Rust implementing the IEEE 754-2008 standard binary16 and bfloat16 types
-
phf_generator
PHF generation logic
-
phf
Runtime support for perfect hash function data structures
-
num-bigint
Big integer implementation for Rust
-
bit-vec
A vector of bits
-
linked-hash-map
A HashMap wrapper that holds key-value pairs in insertion order
-
bit-set
A set of bits
-
ucd-trie
A trie for storing Unicode codepoint sets and maps
-
multimap
A multimap implementation
-
num
A collection of numeric types and traits for Rust, including bigint, complex, rational, range iterators, generic integers, and more!
-
bitvec
Addresses memory by bits, for packed collections and bitfields
-
phf_codegen
Codegen library for PHF types
-
predicates-tree
Render boolean-valued predicate functions results as a tree
-
hashlink
HashMap-like containers that hold their key-value pairs in a user controllable order
-
num-rational
Rational numbers implementation for Rust
-
ciborium-io
Simplified Read/Write traits for no_std usage
-
const-oid
Const-friendly implementation of the ISO/IEC Object Identifier (OID) standard as defined in ITU X.660, with support for BER/DER encoding/decoding as well as heapless no_std (i.e. embedded) support
-
arc-swap
Atomically swappable Arc
-
vec_map
map based on a vector for small integer keys
-
predicates
boolean-valued predicate functions
-
bytes-utils
Additional utilities for working with the bytes crate
-
hdrhistogram
A port of HdrHistogram to Rust
-
num-bigint-dig
Big integer implementation for Rust
-
dlv-list
Semi-doubly linked list implemented using a vector
-
ordered-multimap
Insertion ordered multimap
-
predicates-core
An API for boolean-valued predicate functions
-
radix_trie
Generic radix trie data-structure
-
fraction
Lossless fractions and decimals; drop-in float replacement
-
phf_macros
Macros to generate types in the phf crate
-
arrow-ipc
Support for the Arrow IPC format
-
aliasable
Basic aliasable (non unique pointer) types
-
smartstring
Compact inlined strings
-
enumflags2
Enum-based bit flags
-
ndarray
An n-dimensional array for general elements and for numerics. Lightweight array views and slicing; views support chunking and splitting.
-
scroll
A suite of powerful, extensible, generic, endian-aware Read/Write traits for byte buffers
-
slotmap
data structure
-
bitmaps
Fixed size boolean arrays
-
nibble_vec
Vector data-structure for half-byte values
-
wide
help you go wide
-
sized-chunks
Efficient sized chunk datatypes
-
plain
A small Rust library that allows users to reinterpret data of certain types safely
-
bimap
Bijective maps
-
cranelift-bforest
A forest of B+-trees
-
arrow-select
Selection kernels for arrow arrays
-
enum-map
A map with C-like enum keys represented internally as an array
-
im
Immutable collection datatypes
-
gix-traverse
gitoxide project
-
gix-diff
Calculate differences between various git objects
-
gix-hashtable
that provides hashtable based data structures optimized to utilize ObjectId keys
-
tinystr
A small ASCII-only bounded length string representation
-
gix-commitgraph
Read-only access to the git commitgraph file format
-
histogram
A collection of histogram data structures
-
gix-pack
Implements git packs and related data structures
-
kstring
Key String: optimized for map keys
-
enumset
creating compact sets of enums
-
string-interner
Efficient string interner with minimal memory footprint and fast access to the underlying strings
-
linked_hash_set
HashSet with insertion ordering
-
cranelift-entity
Data structures using entity references as mapping keys
-
generator
Stackfull Generator Library in Rust
-
guppy
Track and query Cargo dependency graphs
-
jsonpath-rust
basic functionality to find the set of the data according to the filtering query
-
nested
A memory efficient container for nested collections (like
Vec<String>
orVec<Vec<T>>
) -
priority-queue
A Priority Queue implemented as a heap with a function to efficiently change the priority of an item
-
array-init
Safe wrapper for initializing fixed-size arrays
-
enum-map-derive
Macros 1.1 implementation of #[derive(Enum)]
-
dary_heap
A d-ary heap
-
trie-root
In-memory patricia trie operations
-
roaring
A better compressed bitset - pure Rust implementation
-
type-map
typemap container with FxHashMap
-
thin-vec
A vec that takes up less space on the stack
-
indexmap-nostd
A no_std compatible implementation of the indexmap crate
-
litemap
A key-value Map implementation based on a flat, sorted Vec
-
frunk
developers with a number of functional programming tools like HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid, Semigroup and friends
-
elsa
Append-only collections for Rust where borrows to entries can outlive insertions
-
ego-tree
Vec-backed ID-tree
-
rowan
generic lossless syntax trees
-
collection_literals
macros for initializing std::collections
-
v_frame
Video Frame data structures, originally part of rav1e
-
rpds
Persistent data structures with structural sharing
-
esaxx-rs
Wrapping around sentencepiece's esaxxx library
-
rangemap
Map and set data structures whose keys are stored as ranges. Contiguous and overlapping ranges that map to the same value are coalesced into a single range
-
nuid
A highly performant unique identifier generator
-
zerofrom
trait for constructing
-
im-rc
Immutable collection datatypes (the fast but not thread safe version)
-
rust_decimal_macros
Shorthand macros to assist creating Decimal types
-
bloomfilter
Bloom filter implementation
-
uluru
fast, LRU cache implementation
-
bv
Bit-vectors and bit-slices
-
modular-bitfield
Allows to easily define bitfield types with modular building blocks
-
value-trait
Traits to deal with JSONesque values
-
compare
Experimental comparators for collections to be generic over
-
zerovec
Zero-copy vector backed by a byte array
-
fastdivide
partial port of libdivide. It makes it possible to reduce the cost of divisions.
-
spade
Delaunay triangulations for the rust ecosystem
-
bounded-vec
Non-empty rust Vec wrapper with type guarantees on lower and upper bounds for items quantity
-
id-set
A bitset implementation that stores data on the stack for small sizes
-
brownstone
building fixed-size arrays
-
binary-heap-plus
Enhanced version of std::collections::BinaryHeap that supports max, min, and custom-order heaps
-
anymap2
A safe and convenient store for one value of each type
-
aliri_braid
Improve and strengthen your strings by making them strongly-typed with less boilerplate
-
drain_filter_polyfill
current nightly implementation of Vec::drain_filter, copypasted out for use on stable
-
index_list
A doubly linked list implemented in safe Rust using vector indexes
-
hash_hasher
A hasher which is designed to work with already-hashed or hash-like data
-
range-map
Maps and sets implemented using ranges
-
owning_ref
creating references that carry their owner with them
-
ndarray-stats
Statistical routines for ArrayBase, the n-dimensional array data structure provided by ndarray
-
keyed_priority_queue
Priority queue that support changing priority or early remove by key
-
array-init-cursor
help keep track of arrays of MaybeUninit
-
array-macro
Array multiple elements constructor syntax
-
intrusive-collections
Intrusive collections for Rust (linked list and red-black tree)
-
trees
General purpose tree data structures
-
grid
Dynamic generic 2D data structure
-
min-max-heap
An efficient, double-ended priority queue
-
polars-ops
More operations on Polars data structures
-
smallstr
String-like container based on smallvec
-
weedle2
A WebIDL Parser
-
vec1
a std Vec wrapper assuring that it has at least 1 element
-
linear-map
A map implemented by searching linearly in a vector
-
crossbeam-skiplist
A concurrent skip list
-
choice
Similar to
either
but supports an unbounded number of variants -
odht
hash tables that can be mapped from disk into memory without the need for up-front decoding
-
intmap
Specialized HashMap for u64 keys
-
qfilter
Efficient bloom filter like datastructure, based on the Rank Select Quotient Filter (RSQF)
-
prio-graph
A lazily populated directed acyclic graph with top-level priority ordering
-
gsgdt
Generic Stringly Typed Graph Datatype
-
minidom
A small, simple DOM implementation on top of rxml, targeting the subset of XML useful for XMPP
-
growable-bloom-filter
Scalable Bloom Filters with serde support
-
arraydeque
A ring buffer with a fixed capacity, which can be stored on the stack
-
cuckoofilter
Cuckoo Filter: Practically Better Than Bloom
-
macaddr
MAC address types
-
corosensei
A fast and safe implementation of stackful coroutines
-
futures-bounded
bounding futures in size and time
-
counter
package to count generic iterables
-
smallbitvec
A bit vector optimized for size and inline storage
-
string
A UTF-8 encoded string with configurable byte storage
-
la-arena
index-based arena without deletion
-
ropey
A fast and robust text rope for Rust
-
typemap_rev
A hashmap, but stores types as keys
-
keyed-set
Keyed Set: a hashbrown-based HashSet that indexes based on projections of its elements
-
metered
Fast, ergonomic metrics for Rust!
-
tinystr-raw
Raw string-to-integer conversions for tinystr
-
ringbuffer
A fixed-size circular buffer
-
croaring-sys
Raw bindings to CRoaring
-
vec-strings
Store any string efficiently in an immutable way
-
diffus
Finds the difference between two instances of any data structure. Supports: collections, Strings, Maps etc. Uses LCS where applicable. Also supports derive via
diffus-derive
. -
anymap
A safe and convenient store for one value of each type
-
sequence_trie
Trie-like data-structure for storing sequences of values
-
log-once
Collection of helper macros for logging some events only once
-
indextree
Arena based tree structure by using indices instead of reference counted pointers
-
codemap
A data structure for efficiently storing source code position and span information (e.g. in a compiler AST), and mapping it back to file/line/column locations for error reporting and suggestions.
-
bitfield-struct
Struct-like procedural macro for bitfields
-
inplace-vec-builder
Build a vec from a vec, in place
-
option_set
Bitflags on steroids
-
trie-standardmap
Standard test map for profiling tries
-
weak-table
Weak hash maps and sets
-
cmsketch
A count min sketch implementation in Rust
-
assoc
Treat vectors like associative arrays
-
delay_map
HashMap collections whose entries expire after a given time
-
newtype-uuid
Newtype wrapper around UUIDs
-
daggy
A directed acyclic graph data structure library. It is Implemented on top of petgraph's Graph data structure and attempts to follow similar conventions where suitable.
-
arraystring
Fixed capacity stack based generic string
-
ffi-convert
A collection of utilities to ease conversion between Rust and C-compatible data structures
-
range-collections
Sets and maps of ranges, backed by smallvec
-
c_linked_list
handling NULL-terminated C linked lists
-
intervallum
Generic interval and interval set library
-
xorf
implementing xor filters - faster and smaller than bloom and cuckoo filters
-
patricia_tree
Memory-efficient data structures based on patricia tree
-
gcollections
Generic traits over Rust collections library
-
sucds
Succinct data structures in Rust
-
bellpepper-core
Core elements for a SNARK Circuit library
-
sorted_vector_map
maps and sets backed by sorted vectors
-
queues
Efficient FIFO Queue data structures
-
nybbles
Efficient nibble-sized (4-bit) byte sequence data structure
-
c_vec
Structures to wrap C arrays
-
boa_interner
String interner for the Boa JavaScript engine
-
egg
egraphs
-
collectable
Fallible, no_std-friendly collection traits
-
hibitset
Hierarchical bit set structure
-
imbl
Immutable collection datatypes
-
space
providing abstractions for spatial datastructures and search
-
rtrb
A realtime-safe single-producer single-consumer ring buffer
-
avro-rs
working with Apache Avro in Rust
-
re_string_interner
string interning library
-
imbl-sized-chunks
Efficient sized chunk datatypes
-
cedarwood
efficiently-updatable double-array trie in Rust (ported from cedar)
-
json-number
JSON number parsing and storage
-
good_lp
Mixed Integer Linear Programming for Rust, with an user-friendly API. This crate allows modeling LP problems, and lets you solve them with various solvers.
-
hybrid-array
Hybrid typenum-based and const generic array types designed to provide the flexibility of typenum-based expressions while also allowing interoperability and a transition path to const generics
-
erasable
Type-erased thin pointers
-
guppy-summaries
Build summaries for Cargo, created by guppy
-
validit
Validate data structures internal state
-
louds-rs
High performance LOUDS (Level-Order Unary Degree Sequence) library
-
bitm
bit and bitmap (bit vector) manipulation
-
ph
data structures based on perfect hashing
-
sorted-vec
Create and maintain sorted vectors and vector-backed sets
-
fid-rs
High performance FID (Fully Indexable Dictionary) library
-
arca
Various utilities used in my crates
-
json_dotpath
Dotted path access to nested JSON objects (serde_json::Value)
-
nutype
The newtype with guarantees
-
oid
Rust-native library for building, parsing, and formating Object Identifiers (OIDs)
-
discord-indexmap
A fork of the popular
indexmap
library that adds a few extra APIs that are yet to be upstreamed -
circular-buffer
Efficient, fixed-size, overwriting circular buffer
-
prefix-sum-vec
Compressed storage for highly repeating elements, with
O(log n)
lookups -
trie-rs
Memory efficient trie (prefix tree) and map library based on LOUDS
-
smallbitset
series of allocation free sets capable of holding small integer values
-
iso7816-tlv
tools and utilities for handling TLV data as defined in ISO/IEC 7816-4
-
flexstr
A flexible, simple to use, immutable, clone-efficient
String
replacement for Rust -
msgpack_simple
Simplified, easy to use, pure Rust MessagePack implementation focused on handling dynamic data structures
-
ritelinked
HashMap-like containers that hold their key-value pairs in a user controllable order
-
pdatastructs
probabilistic data structures
-
xor_name
Xor Type
-
crdts
Practical, serializable, thoroughly tested CRDTs
-
fvm_ipld_hamt
Sharded IPLD HashMap implementation
-
iset
Map and set with interval keys (x..y)
-
intervaltree
generic implementation of an immutable interval tree
-
hdf5
Thread-safe Rust bindings for the HDF5 library
-
abi_stable
For doing Rust-to-Rust ffi,writing libraries loaded at program startup
-
strict
collections with strict bounds
-
decoded-char
wrapper to keep track of the original byte length of a decoded character in the encoded source file
-
prehash
storing values with precomputed hashes
-
vob
Vector of Bits with Vec-like API and usize backing storage
-
merkle-cbt
generating efficient Merkle tree and combined Merkle proof based on complete binary tree
-
id_tree
creating and modifying Tree structures
-
small-map
An inline SIMD accelerated hashmap designed for small amount of data
-
hashbag
An unordered multiset implementation using a hash bag
-
circular-queue
A circular buffer-like queue
-
bloom2
Fast, compressed 2-level bloom filter and bitmap
-
sql-json-path
SQL/JSON Path implementation in Rust
-
iso7816
Types for ISO 7816
-
yrs
High performance implementation of the Yjs CRDT
-
smallbox
Small Box
optimization: store small item on stack and fallback to heap for large item -
packedvec
Store vectors of integers efficiently
-
array-concat
Macros for concatenating const arrays
-
stable_bst
An ordered map and set based on a binary search tree. Works with stable Rust 1.9.0.
-
bridgetree
A space-efficient Merkle tree designed for linear appends with witnessing of marked leaves, checkpointing & state restoration
-
sparsevec
Compress vectors using row displacement
-
risc0-binfmt
RISC Zero binary format crate
-
python-packed-resources
Manage data structures containing Python resources
-
nodit
Discrete Interval Tree Data-Structures, which are based off BTreeMap
-
vecmap-rs
A vector-based map and set implementation
-
any_vec
Type erased vector. Most operations can be done without type knowledge. Mostly zero overhead.
-
amplify
Amplifying Rust language capabilities: multiple generic trait implementations, type wrappers, derive macros
-
optional
supplies a number of Option-like primitive types
-
bk-tree
A Rust BK-tree implementation
-
lifetimed-bytes
Bytes, but with attached lifetime
-
bounded-vec-deque
A double-ended queue|ringbuffer with an upper bound on its length
-
uguid
GUID (Globally Unique Identifier) no_std library
-
graaf
Functions and types for working with graphs
-
velcro
Convenience macros for initializing vectors, hash maps and other Rust collections
-
queue-file
lightning-fast, transactional, file-based FIFO
-
shardtree
A space-efficient Merkle tree with witnessing of marked leaves, checkpointing & state restoration
-
rasn-smi
Data types for handling Structure for Management Information
-
rs-snowflake
Rust version of the Twitter snowflake algorithm
-
static-files
help automate static resource collection
-
cc-traits
Common collection traits
-
typed-index-collections
Typed index version of Rust slice and Vec containers
-
ux
Implement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21, u22, u23, u24, u25, u26, u27, u28, u29, u30, u31, u33…
-
mown
Maybe owned values. Wrappers for values that can be either owned or borrowed.
-
merkle-search-tree
A data structure for efficient state-based CRDT replication and anti-entropy
-
ecow
Compact, clone-on-write vector and string
-
fixedvec
A heapless version of the Rust vector type
-
index_vec
Newtype-style helpers for
Vec
andusize
-
btree_monstrousity
a code port of BTreeMap but with comparator functions
-
array_tool
Helper methods for processing collections
-
appendlist
An append-only list that preserves references to its elements
-
range-set
Smallvec-backed containers of sorted integer ranges
-
rdf-types
Data-structures and traits definitions for RDF
-
literally
Macro literals for members of std::collections
-
exponential-decay-histogram
A histogram which exponentially weights in favor of recent values
-
slice-ring-buffer
A double-ended queue that Deref's into a slice
-
jsonptr
Data structures and logic for resolving, assigning, and deleting by JSON Pointers (RFC 6901)
-
vec-collections
Rust collections that are newtype wrappers around smallvec
-
ra_ap_tt
TBD
-
arbitrary-int
Modern and lightweight implementation of u2, u3, u4, ..., u127
-
contextual
deal with data in context
-
erased_set
A set of erased types
-
ra_ap_ide_assists
TBD
-
bio
A bioinformatics library for Rust. This library provides implementations of many algorithms and data structures that are useful for bioinformatics, but also in other fields.
-
bitstring
traits and implementations
-
bao-tree
BLAKE3 verfiied streaming with custom chunk groups and range set queries
-
iowrap
Small helpers for using io::Read/io::Write
-
atree
An arena based tree structure with removal support
-
buf-list
A list of buffers that implements the bytes::Buf trait
-
slice-deque
A double-ended queue that Deref's into a slice
-
probabilistic-collections
Various implementations of collections that use approximations to improve on running time or memory, but introduce a certain amount of error
-
feature-set
User defined feature set
-
qp-trie
An idiomatic and fast QP-trie implementation in pure Rust, written with an emphasis on safety
-
diff-struct
A trait for diffing and applying diffs to types
-
small-ord-set
A set data-structure represented by a sorted
SmallVec
-
rust-fsm
A framework for building finite state machines in Rust
-
meminterval
interval-tree in Rust made to store memory mappings
-
svd-rs
A CMSIS-SVD base structures
-
rtree_rs
R-tree for Rust
-
fqdn
FQDN (Fully Qualified Domain Name)
-
fixed-macro
Macros for creating fixed-point constants for types in the
fixed
crate -
bondrewd
Bit-Level field packing with proc_macros
-
merkletree
Light merkle tree implementation with SPV support and dependency agnostic
-
bitstruct
Better Bitfields
-
drop_guard
enables you to implement the Drop trait on any type. So you can run a closure on any value running out of scope
-
rs-car
CAR v1 and v2 specifications
-
tuple_list
macro-free variadic tuple metaprogramming
-
skiplist
in rust, providing fast insertion and removal. A normal skiplist is implemented, as well as an ordered skiplist and a skipmap.
-
ntex-bytes
Types and traits for working with bytes (bytes crate fork)
-
fastbloom-rs
Some fast bloom filter implemented by Rust for Python and Rust!
-
narrow
Apache Arrow
-
intx
Defines new integer types with non-standard but fixed sizes
-
succinct
data structures for Rust
-
iterable
collection like types
-
synchronized-writer
A tiny implement for synchronously writing data
-
map-macro
Declarative macros for statically initializing collections
-
golomb-coded-set
BIP158 Golomb-Coded Set data structure
-
kbs-types
Rust (de)serializable types for KBS
-
flatcontainer
A flat container representation for Rust
-
immutable-chunkmap
A fast immutable map and set with batch insert and update methods, COW operations, and big O efficient implementations of set and merge operations
-
rustc_data_structures
Reuse rustc_data_structures for compiler_base
-
suggest
A minimal library to provide similar name suggestions like "Did you mean?"
-
cactus
Immutable parent pointer tree
-
specs-hierarchy
Scene graph type hierarchy abstraction for use with specs
-
defaultmap
HashMap with an automatic default for missing keys
-
append-only-vec
Append-only, concurrent vector
-
btree_experiment
implements a BTreeMap similar to std::collections::BTreeMap
-
symbol_table
A symbol table that's fast, concurrent, and gives stable references
-
mset
/ multiset / bag implementation
-
every_variant
EveryVariant trait that provides the every_variant method on types. Allows you to easily generate every combination of variants in structures that contains Enums, or in nested enum trees…
-
molecule
Rust bindings for molecule
-
light_phylogeny
Methods and functions for phylogeny
-
grdf
Generalized RDF graphs and datasets
-
warg-transparency
transparency data structures
-
file_test_runner
File-based test runner for running tests found in files
-
gpt_disk_types
GPT (GUID Partition Table) disk data types no_std library
-
manganis
Ergonomic, automatic, cross crate asset collection and optimization
-
caches
popular caches (support no_std)
-
xml-builder
Easy and highly-configurable XML builder/writer
-
y-sync
Yrs synchronization protocol
-
array2d
A fixed sized two-dimensional array
-
fastbloom
The fastest Bloom filter in Rust. No accuracy compromises. Compatible with any hasher.
-
indxvec
Vecs sorting, merging, indexing, ranking, searching, reversing, intersecting, printing, etc
-
tracker
A macro to track changes on structs
-
disjoint-sets
Three union-find implementations
-
ordered
A wrapper for adding arbitrary partial/total order to a type
-
storage-proofs-core
Core parts for proofs of storage
-
tinyset
Size-optimized sets
-
loaded_dice
sampler for loaded dices, implementing the alias method
-
rb
A thread-safe ring buffer with blocking IO
-
cw-semver
Parser and evaluator for Cargo's flavor of Semantic Versioning
-
range_map_vec
range map data structure backed by a Vec
-
las
Read and write point clouds stored in the ASPRS las file format
-
index_many
A proof of concept for indexing an slice at multiple locations at once
-
cita_trie
Modified Patricia Tree (aka Trie)
-
aabb-quadtree
A quadtree that maps bounding-boxes to elements
-
pqueue
Priority Queue for Rust
-
modular-bitfield-msb
Allows to easily define bitfield types with modular building blocks. MSB-first version.
-
crop
A pretty fast text rope
-
wasmedge-types
The common data structures for WasmEdge Rust bindings
-
fixed-capacity-vec
Variable-length buffer backed by a fixed-size heap array
-
vart
An immutable versioned adaptive radix trie
-
multi_index_map
MultiIndexMap: A generic multi index map inspired by boost multi index containers
-
portgraph
Data structure library for directed graphs with first-level ports
-
automap
pattern to implement key-value maps where the value type contains the key type
-
ndarray-ndimage
Multidimensional image processing for ArrayBase, the n-dimensional array data structure provided by ndarray
-
stack-buf
Vector-like facade for arrays allocated entirely on the stack
-
nonempty-collections
Correct-by-construction non-empty collections
-
multi-stash
Vector-based arena data structure that reuses vacant slots
-
slab_tree
A vec-backed tree structure with tree-specific generational indexes
-
sum
General-purpose sum types
-
stable-vec
A Vec-like collection which guarantees stable indices and features O(1) element deletion (semantically similar to
Vec<Option<T>>
). Useful for allocations in graphs or similar data structures. -
multiset
Multisets/bags
-
committable
Keccak256-based structured commitments
-
moka-cht
Lock-free resizeable concurrent hash table
-
bloomy
Bloom filter using only two hash functions
-
rust-fsm-dsl
Macros for rust-fsm DSL
-
smallset
An unordered set of elements optimized for small sizes
-
differential-dataflow-master
An incremental data-parallel dataflow platform
-
cacaos
Core library for CACAO traits and data structures
-
len-trait
Len trait for collectons
-
cdylib-link-lines
Collection of link-lines useful to build correct cdylibs on targets
-
kv-trie-rs
KV capable prefix trie library based on LOUDS
-
disjoint-set
Tarjan's Union-Find Data Structure
-
cve
Mappings for parsing the CVE JSON files
-
lru-mem
An LRU cache implementation bounded by memory
-
lance-arrow
Arrow Extension for Lance
-
bitset-core
Straightforward, no-std compatible, simd optimized, BitSet API
-
btreemultimap
A multimap implementation with range support
-
elastic-array-plus
Elastic vector backed by fixed size array
-
slice-of-array
Extension traits for casting between slices and slices of arrays. (&[T] <-> &[[T; n]])
-
bloom
Fast Bloom Filter and Counting Bloom Filter implementation
-
tree-sitter-traversal
Traversal of tree-sitter Trees and any arbitrary tree with a TreeCursor-like interface
-
legion
High performance entity component system (ECS) library
-
dot2
generating Graphviz DOT language files for graphs
-
wayrs-protocols
A collection of Wayland protocols to use with wayrs-client
-
hecs
A fast, minimal, and ergonomic entity-component-system library
-
radix-heap
Fast monotone priority queues
-
lance-index
Lance indices implementation
-
cosmic_undo_2
Undo and redo done the right-way
-
cueue
High performance SPSC circular byte buffer with batch operations
-
varuint
Variable length signed and unsigned integer types
-
num-bigfloat
Increased precision floating point numbers implemented purely in Rust
-
serde_str_helpers
Helpers for using serde with strings
-
petal-clustering
A collection of clustering algorithms
-
range-set-blaze
Integer sets as fast, sorted, integer ranges with full set operations
-
gpt_disk_io
GPT (GUID Partition Table) disk IO no_std library
-
compact-rc
Low-memory reference-counting pointers
-
lapce-xi-rope
A generic rope data structure built on top of B-Trees
-
bitvector
in Rust
-
minivec
A version of Vec that's only the size of a single pointer
-
oxrdf
providing basic data structures related to RDF
-
handy
providing handles and handlemaps
-
do-notation
Monadic do syntactic sugar
-
rose_tree
An indexable tree data structure with a variable and unbounded number of branches per node. It is Implemented on top of petgraph's Graph data structure and attempts to follow similar conventions where suitable.
-
tuplez
Tuples represented in recursive form
-
fixed-slice-vec
FixedSliceVec
is a dynamic length Vec with runtime-determined maximum capacity backed by a slice -
stackvector
StackVec: vector-like facade for stack-allocated arrays
-
takeable
Container type that allows for temporarily moving out of the container, or permanently moving out and invalidating the container
-
std-ext
Extend the standard library functionality
-
lib-sokoban
Sokoban: compact, efficient data structures packed into contiguous byte arrays
-
generic-btree
Generic BTree for versatile purposes
-
petitset
An ordered set data structure, optimized for stack-allocated storage of a tiny number of elements with a fixed cap
-
key-node-list
Doubly-linked list that stores key-node pairs
-
docker-compose-types
Deserialization and Serialization of docker-compose.yml files in a relatively strongly typed fashion
-
bet
parsing and evaluating binary expression trees
-
metatensor
Self-describing sparse tensor data format for atomistic machine learning and beyond
-
slabigator
A linked list that doesn't do dynamic memory allocations
-
chat-prompts
Chat prompt template
-
walker-extras
Additional functionality for SBOM and CSAF walker
-
historian
a high performance zero-config histogram implementation
-
walker-common
Common functionality for SBOM and CSAF walker
-
starlark_map
Map implementation with starlark-rust specific optimizations
-
idlset
Fast u64 set operations library
-
smodel
Symbol semantic modeling for Rust
-
user-error
UserFacingError is an error crate that allows you to pretty print your errors and error chain for consumption by the end user. If you implement the UFE trait, the default implementation…
-
vector-map
VecMap<K, V>: a Linear Search with Map API
-
redox_simple_endian
A create for defining endianness within your data structures, to make handling portable data structures simpler
-
try-lazy-init
Fallible lazy initialization
-
flat-tree
Series of functions to map a binary tree to a list
-
test-assembler
A set of types for building complex binary streams
-
ulid-generator-rs
generating ULIDs
-
range-traits
Ranges related traits
-
tracker-macros
Macros for the tracker crate
-
ndshape
fast linearization of N-dimensional array indices
-
lock_free_hashtable
Lock-free (almost) insertion only hashtable
-
slotmapd
orlp/slotmap fork where serialization cycle doesn't change observable behavior
-
task-group
manage groups of tokio tasks
-
keyvi
key value index. It is an in-memory FST-based data structure highly optimized for size and lookup performance.
-
small-fixed-array
providing fixed length immutable collections with a low memory footprint
-
sxd-xpath-visitor
XML XPath library
-
typed_floats
Types for handling floats with type checking at compile time
-
fpdec
Decimal fixed-point arithmetic
-
tinymap
A map structure that stores its data on the stack
-
btree-range-map
B-tree range map implementation
-
csaf-walker
work with CSAF data
-
iptrie
IPv4/v6 prefixes lookup structures (based on tries)
-
extensions
typemap container with FxHashMap
-
smolset
" An unordered set of elements optimized for small sizes. This is a fork of the original library with overhauled internals, better fallback perforamance (O(1) insert and find) and more features!
-
queued_rust
queue type for better privacy managment and data orginization
-
blazemap
Implements a vector-based slab-like map with an interface similar to that of HashMap, and also provides tools for generating lightweight identifiers that can be type-safely used as keys for this map
-
debounce
Data structures and helpers for debouncing a stream of events: removing duplicate events occurring closely in time
-
balanced-tree-index
constant-time manipulation of a complete binary tree with a flat in-memory representation
-
itermap
Iterator tools for maps (
HashMap
,BTreeMap
, etc.) -
bitlab
Extracting a range of bits from a binary data source
-
radixdb
a radix tree data structure for in memory or zero copy on disk storage
-
sparse-merkle-tree
Sparse merkle tree implement in rust
-
mc-oblivious-ram
Implementations of Oblivious RAM data structures
-
griddle
A HashMap variant that spreads resize load across inserts
-
progress-streams
Progress callbacks for types which implement Read/Write
-
extract_map
A HashMap for memory efficent storage of value types which contain their own keys
-
array_map
Map backed array for fixed size keys with O(1) performance
-
mc-oblivious-map
Oblivious Hash Map data structures on top of Oblivious RAM
-
bit_manipulation
lightweight Rust crate for seamless management and validation of up to 128 option states. Empower your applications with efficient, flexible, and intuitive option handling, ensuring…
-
linked-list
An alternative implementation of std::collections::LinkedList
-
indexed
Convenient allocator for index-linked data structures
-
itybity
An itty bitty crate providing bit iterators and bit iterator accessories
-
slice-dst
Slice-based custom DSTs
-
case_insensitive_string
A case insensitive string struct
-
structured
Data structures to handle large, structured data
-
btree-slab
A memory compact Slab-based B-tree implementation
-
rclite
small, fast, and memory-friendly reference counting compatible with Arc and Rc APIs
-
numeric-array
Wrapper around generic-array that adds efficient numeric trait implementations
-
leak
Safely leak data from owned data structures
-
hylo-fix
Fixed-point number types with Solana Anchor support
-
modql
Model Query Language support
-
kappendlist
Append to a growable list in O(1) without needing &mut
-
scalable_cuckoo_filter
A variant of Cuckoo Filter whose size automatically scales as necessary
-
miniconf
Serialize/deserialize/access reflection for trees
-
structz
Anonymous struct implementation in rust
-
ordered_hash_map
HashMap which preserves insertion order
-
splay_tree
Splay Tree based Data Structures (map, set, heap)
-
lsm-tree
A K.I.S.S. implementation of log-structured merge trees (LSM-trees/LSMTs)