-
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
-
petgraph
Graph data structure library. Provides graph types and graph algorithms.
-
phf
Runtime support for perfect hash function data structures
-
ndarray
An n-dimensional array for general elements and for numerics. Lightweight array views and slicing; views support chunking and splitting.
-
bitvec
Addresses memory by bits, for packed collections and bitfields
-
priority-queue
A Priority Queue implemented as a heap with a function to efficiently change the priority of an item
-
tinyvec
tinyvec
provides 100% safe vec-like data structures -
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
-
slotmap
data structure
-
bit-set
A set of bits
-
roaring
A better compressed bitset - pure Rust implementation
-
litemap
A key-value Map implementation based on a flat, sorted Vec
-
bit-vec
A vector of bits
-
bimap
Bijective maps
-
hashlink
HashMap-like containers that hold their key-value pairs in a user controllable order
-
tinystr
A small ASCII-only bounded length string representation
-
croaring
Rust wrapper for CRoaring
-
enumset
creating compact sets of enums
-
hdrhistogram
A port of HdrHistogram to Rust
-
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.
-
generator
Stackfull Generator Library in Rust
-
intrusive-collections
Intrusive collections for Rust (linked list and red-black tree)
-
yrs
High performance implementation of the Yjs CRDT
-
string-interner
Efficient string interner with minimal memory footprint and fast access to the underlying strings
-
array-init
Safe wrapper for initializing fixed-size arrays
-
vec1
a std Vec wrapper assuring that it has at least 1 element
-
fixedbitset
bitset collection
-
linked_hash_set
HashSet with insertion ordering
-
smartstring
Compact inlined strings
-
gix-traverse
gitoxide project
-
rowan
generic lossless syntax trees
-
fraction
Lossless fractions and decimals; drop-in float replacement
-
typed-index-collections
Typed index version of Rust slice and Vec containers
-
faststr
string library that reduces the cost of clone
-
amplify
Amplifying Rust language capabilities: multiple generic trait implementations, type wrappers, derive macros
-
indextree
Arena based tree structure by using indices instead of reference counted pointers
-
ringbuffer
A fixed-size circular buffer
-
nonempty-collections
Correct-by-construction non-empty collections
-
bitmaps
Fixed size boolean arrays
-
elsa
Append-only collections for Rust where borrows to entries can outlive insertions
-
hash_hasher
A hasher which is designed to work with already-hashed or hash-like data
-
rpds
Persistent data structures with structural sharing
-
radix_trie
Generic radix trie data-structure
-
bloomfilter
Bloom filter implementation
-
histogram
A collection of histogram data structures
-
circular-buffer
Efficient, fixed-size, overwriting circular buffer
-
ecow
Compact, clone-on-write vector and string
-
thin-vec
A vec that takes up less space on the stack
-
index_vec
Newtype-style helpers for
Vec
andusize
-
guppy
Track and query Cargo dependency graphs
-
ndarray-stats
Statistical routines for ArrayBase, the n-dimensional array data structure provided by ndarray
-
index_list
A doubly linked list implemented in safe Rust using vector indexes
-
gxhash
non-cryptographic algorithm
-
slice-ring-buffer
A double-ended queue that Deref's into a slice
-
imbl
Immutable collection datatypes
-
patricia_tree
Memory-efficient data structures based on patricia tree
-
biodivine-lib-bdd
thread-safe implementation of basic binary decision diagrams
-
indxvec
Vecs sorting, merging, indexing, ranking, searching, reversing, intersecting, printing, etc
-
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.
-
smallbox
Small Box
optimization: store small item on stack and fallback to heap for large item -
ego-tree
Vec-backed ID-tree
-
cordyceps
Mycelium intrusive data structures
-
orx-split-vec
An efficient dynamic capacity vector with pinned element guarantees
-
uluru
fast, LRU cache implementation
-
spade
Delaunay triangulations for the rust ecosystem
-
intervallum
Generic interval and interval set library
-
newtype-uuid
Newtype wrapper around UUIDs
-
egg
egraphs
-
str-buf
Static string buffer
-
narrow
Apache Arrow
-
blobby
Iterator over simple binary blob storage
-
growable-bloom-filter
Scalable Bloom Filters with serde support
-
crdts
Practical, serializable, thoroughly tested CRDTs
-
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
-
im
Immutable collection datatypes
-
modular-bitfield
Easily define bitfield types with modular building blocks
-
vob
Vector of Bits with Vec-like API and usize backing storage
-
intmap
Specialized HashMap for integer keys
-
micromap
The fastest alternative to HashMap, for maps smaller than 20 keys
-
array-macro
Array multiple elements constructor syntax
-
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
-
zerofrom
trait for constructing
-
btree-range-map
B-tree range map implementation
-
smallbitvec
A bit vector optimized for size and inline storage
-
hashbag
An unordered multiset implementation using a hash bag
-
equivalent
Traits for key comparison in maps
-
bitfield-struct
Struct-like procedural macro for bitfields
-
vec_map
map based on a vector for small integer keys
-
fastbloom
The fastest Bloom filter in Rust. No accuracy compromises. Compatible with any hasher.
-
tinyset
Size-optimized sets
-
dlv-list
Semi-doubly linked list implemented using a vector
-
dary_heap
A d-ary heap
-
typed_floats
Types for handling floats with type checking at compile time
-
ph
data structures based on perfect hashing
-
modql
Model Query Language support
-
vers-vecs
A collection of succinct data structures supported by fast implementations of rank and select queries
-
slice-dst
Slice-based custom DSTs
-
esaxx-rs
Wrapping around sentencepiece's esaxxx library
-
orx-priority-queue
Priority queue traits and high performance d-ary heap implementations
-
crop
A pretty fast text rope
-
grid
Dynamic generic 2D data structure
-
opentelemetry-resource-detectors
A collection of community supported resource detectors for OpenTelemetry
-
qfilter
Efficient bloom filter like datastructure, based on the Rank Select Quotient Filter (RSQF)
-
boa_interner
String interner for the Boa JavaScript engine
-
iddqd
Maps where keys borrow from values, including bijective and trijective maps
-
binary-heap-plus
Enhanced version of std::collections::BinaryHeap that supports max, min, and custom-order heaps
-
moc
made to create and manipulate HEALPix Multi-Order Coverages maps (MOCs), see https://ivoa.net/documents/MOC/
-
tree_iterators_rs
built to provide you with the iterators to easily work with tree data structures in Rust
-
bounded-vec
Non-empty rust Vec wrapper with type guarantees on lower and upper bounds for items quantity
-
log-once
Collection of helper macros for logging some events only once
-
lsm-tree
A K.I.S.S. implementation of log-structured merge trees (LSM-trees/LSMTs)
-
indexset
A two-level BTree with fast iteration and indexing operations
-
string
A UTF-8 encoded string with configurable byte storage
-
defaultmap
HashMap with an automatic default for missing keys
-
lattices
Lattice data types for simplifying distributed state by providing associativity, commutativity, and idempotence
-
portgraph
Data structure library for directed graphs with first-level ports
-
oxc_index
Newtype-style helpers for
Vec
andusize
-
las
Reads and writes point clouds stored in the ASPRS las file format
-
fixed-map
A fixed map where storage layout is calculated by a procedural macro
-
csaf-walker
work with CSAF data
-
sorted-vec
Create and maintain sorted vectors and vector-backed sets
-
phf_shared
Support code shared by PHF libraries
-
algorithm
about algorithm data structure, now has ttl with lru/lru-k/lfu/arc and slab/rbtree/roaring_bitmap/timer_wheelss, 关于算法常用的数据结构
-
multi_index_map
MultiIndexMap: A generic multi index map inspired by boost multi index containers
-
vart
An immutable versioned adaptive radix trie
-
bloom2
Fast, compressed, 2-level bloom filter and bitmap
-
iptrie
IPv4/v6 prefixes lookup structures (based on tries)
-
iset
Map and set with interval keys (x..y)
-
linked-hash-map
A HashMap wrapper that holds key-value pairs in insertion order
-
fqdn
FQDN (Fully Qualified Domain Name)
-
cita_trie
Modified Patricia Tree (aka Trie)
-
bitflag-attr
A macro to generate bitflags structures from C-like enums
-
range-collections
Sets and maps of ranges, backed by smallvec
-
cranelift-entity
Data structures using entity references as mapping keys
-
ndarray-ndimage
Multidimensional image processing for ArrayBase, the n-dimensional array data structure provided by ndarray
-
mitsein
Strongly typed APIs for non-empty collections, slices, and iterators
-
timed-map
Lightweight map implementation that supports expiring entries and fully compatible with both std and no_std environments
-
vecmap-rs
A vector-based map and set implementation
-
quantities
Unit-safe computations with quantities
-
iroh-metrics
metrics for iroh
-
xorf
implementing xor filters - faster and smaller than bloom and cuckoo filters
-
trees
General purpose tree data structures
-
skiplist
in Rust for fast insertion and removal, including a normal skiplist, ordered skiplist, and skipmap
-
qwt
Quad Wavelet Tree
-
keyed_priority_queue
Priority queue that support changing priority or early remove by key
-
lib-sokoban
Sokoban: compact, efficient data structures packed into contiguous byte arrays
-
bridgetree
A space-efficient Merkle tree designed for linear appends with witnessing of marked leaves, checkpointing & state restoration
-
arraydeque
A ring buffer with a fixed capacity, which can be stored on the stack
-
i256
Optimized implementations of 256-bit signed and unsigned integers
-
circular-queue
A circular buffer-like queue
-
sqrid
Square coordinates and grid-like arrays, with zero dependencies, in a single file
-
xsd-types
XSD data types
-
iso7816-tlv
tools and utilities for handling TLV data as defined in ISO/IEC 7816-4
-
keyvi
key value index. It is an in-memory FST-based data structure highly optimized for size and lookup performance.
-
hpo
Human Phenotype Ontology Similarity
-
cdg_api
interact with api.congress.gov
-
array-concat
Macros for concatenating const arrays
-
qp-trie
An idiomatic and fast QP-trie implementation in pure Rust, written with an emphasis on safety
-
num-bigfloat
Increased precision floating point numbers implemented purely in Rust
-
typemap_rev
A hashmap, but stores types as keys
-
submap
B-Tree map for pub/sub services
-
open-payments-iso20022-acmt
Open Payments - Message Parsing Library - ISO20022 ACMT
-
range-set
Smallvec-backed containers of sorted integer ranges
-
rsdict
Fast static rank and select data structure
-
xml-builder
Easy and highly-configurable XML builder/writer
-
gpt_disk_io
GPT (GUID Partition Table) disk IO no_std library
-
orx-linked-list
A linked list implementation with unique features and an extended list of constant time methods providing high performance traversals and mutations
-
dbsp
Continuous streaming analytics engine
-
bitm
bit and bitmap (bit vector) manipulation
-
slotmapd
orlp/slotmap fork where serialization cycle doesn't change observable behavior
-
rust_dynamic
Support for dynamically-typed values in run-time
-
fastbloom-rs
Some fast bloom filter implemented by Rust for Python and Rust!
-
id_tree
creating and modifying Tree structures
-
spatialtree
A fast and flexible generic spatial tree collection (Octree, Quadtree, etc)
-
validated
The cumulative sibling of
Result
andEither
-
rshyper
focuses on hypergraphs
-
docker-compose-types
Deserialization and Serialization of docker-compose.yml files in a relatively strongly typed fashion
-
fm-index
FM index and its variant implementations for Rust
-
ringmap
A hash table with consistent deque-like order and fast iteration
-
bytes-utils
Additional utilities for working with the bytes crate
-
slotmap-careful
Wrap the slotmap crate and prevent key reuse
-
cc-traits
Common collection traits
-
arc-slice
Shared memory slices
-
unique-pointer
UniquePointer
data structure that makes extensive use ofunsafe
rust to provide a shared pointer across other data structures -
xot
Full-featured XML tree library for Rust
-
idlset
Fast u64 set operations library
-
itybity
An itty bitty crate providing bit iterators and bit iterator accessories
-
ptr_hash
A high-throughput minimal perfect hash function
-
cow_hashbrown
port of Google's SwissTable hash map with copy-on-write support
-
mx-message
A fast, type-safe Rust implementation of MXMessage for parsing MX messages
-
json_dotpath
Dotted path access to nested JSON objects (serde_json::Value)
-
lru-slab
Pre-allocated storage with constant-time LRU tracking
-
ordered-multimap
Insertion ordered multimap
-
chat-prompts
Chat prompt template
-
bao-tree
BLAKE3 verfiied streaming with custom chunk groups and range set queries
-
short-uuid
generate and parse short uuids
-
bit_mask_ring_buf
A ring buffer implementation with cheap indexing
-
tree-ds
manipulate tree data structures
-
merkletree
Light merkle tree implementation with SPV support and dependency agnostic
-
undo
An undo-redo library
-
zarray
Cache-optimized 2D and 3D arrays using Morton order (aka Z-order) Z-indexed storage, with a convenient API for common 2D and 3D access patterns. Use of zarray in place of a Vec of Vecs often improves performance…
-
orx-tree
A beautiful tree 🌳 with convenient, efficient, parallelizable growth, mutation and traversal features
-
hdf5
Thread-safe Rust bindings for the HDF5 library
-
dogma
Named
,MaybeNamed
,Labeled
,MaybeLabeled
,Collection
, andCollectionMut
traits -
nybbles
Efficient nibble-sized (4-bit) byte sequence data structure
-
sparsey
Entity Component System based on sparse sets
-
ordered
A wrapper for adding arbitrary partial/total order to a type
-
cactus
Immutable parent pointer tree
-
sparsevec
Compress vectors using row displacement
-
atone
A VecDeque and Vec variant that spreads resize load across pushes
-
ftree
A very fast fenwick tree implementation
-
hibitset
Hierarchical bit set structure
-
pi_slotmap
Slotmap data structure
-
bittle
Zero-cost bitsets over native Rust types
-
cueue
High performance SPSC circular byte buffer with batch operations
-
mzpeaks
representing peaks in mass spectrometry data
-
block-grid
A quick, cache-conscious, tiled 2D array
-
rust-mcp-transport
Transport implementations for the MCP (Model Context Protocol) within the rust-mcp-sdk ecosystem, enabling asynchronous data exchange and efficient message handling between MCP clients and servers
-
i_shape
iShape is a compact and efficient library specifically designed for representing 2D data structures using IntPoint
-
imbl-sized-chunks
Efficient sized chunk datatypes
-
wildbird
Rust Framework 🐦
-
parsable
A trait to easily parse data structures
-
enum-table
creating tables with enums as key
-
scalable_cuckoo_filter
A variant of Cuckoo Filter whose size automatically scales as necessary
-
orgflow
managing documents with support for tasks and notes
-
mutaig
Mutable AIGs designed for equivalence checking
-
converge
Layered configuration, can be expressed in a single line of code. The
Converge
trait merges instances of structures into a new instance of a structure. TheConverge
trait can be derived… -
delay_map
HashMap collections whose entries expire after a given time
-
raft-log
Raft log implementation
-
tracker
A macro to track changes on structs
-
typeid_prefix
that implements a type-safe version of the TypePrefix section of the
TypeID
Specification -
heapless_graphs
composable graphs for no_alloc environments
-
btree-slab
A memory compact Slab-based B-tree implementation
-
tst
Ternary search trie collection in rust with similar API to std::collections as it possible
-
array2d
A fixed sized two-dimensional array
-
value-log
Value log implementation for key-value separated LSM storage
-
static-files
help automate static resource collection
-
numeric-array
Wrapper around generic-array that adds efficient numeric trait implementations
-
trk-io
TrackVis (*.trk) reader and writer
-
smallstr
String-like container based on smallvec
-
tagged-pointer
Platform-independent space-efficient tagged pointers
-
alot
A forbid-unsafe, generational slot map with usize-sized IDs
-
matreex
matrix implementation
-
hashslab
A hash table with data accessible by index
-
phf_generator
PHF generation logic
-
eastl-rs
EASTL binary-compatible Rust implementations
-
axion-data
A high-performance data processing library written in Rust, providing DataFrame and Series functionality similar to pandas
-
noa-parser
Noa parser is an extensible general purpose framework parser allowing to parser any type of data without allocation
-
orx-iterable
Defines and implements Iterable, Collection and CollectionMut traits to represent types that can be iterated over multiple times
-
jaq-json
JSON values for jaq
-
ordinal-map
Ordinal trait to map values to integers and efficient maps and sets for such types
-
heavykeeper
finding Top-K elephant flows with high precision and low memory footprint
-
panfix
parsing: linear time parsing of multifix operators
-
brie-tree
A fast B+ Tree implementation that uses integer keys
-
hecs-hierarchy
Hierachy implementation for Hecs ECS
-
hvec
A Vec-like structure that can store different types of different sizes contiguous with each other in memory
-
stac-server
SpatioTemporal Asset Catalog (STAC) API server
-
dot2
generating Graphviz DOT language files for graphs
-
triple_arena
Regular, Chain, Surjection, and Ordered Arenas supporting non-Clone types, deletion, and more
-
valkyrie-ast
Strong typed abstract syntax tree of valkyrie language
-
sync-ptr
Sync & Send wrappers for raw pointer's
-
arrayset
An array-backed ordered set type
-
more_collections
Additional collections not found in std::collections
-
rust_decimal_macros
Shorthand macros to assist creating Decimal types
-
pin-list
A safe
Pin
-based intrusive doubly linked list -
normalize_interval
Normalizing interval library
-
simplehash
fast Rust library implementing common non-cryptographic hash functions: FNV, MurmurHash3, CityHash, and Rendezvous hashing
-
cve
Mappings for parsing the CVE JSON files
-
spacetimedb-data-structures
Assorted data structures used in spacetimedb
-
bigraph
Different representations with implemented operations on bigraphs
-
byteview
Thin, immutable zero-copy slice type
-
plain_trie
Classic trie implementation capable of mapping any T to char iterator
-
ocpp_rs
Protocol implementation for Open Charge Point Protocol (OCPP) in Rust
-
rdf-types
Data-structures and traits definitions for RDF
-
bumparaw-collections
A small set of bumpalo-backed collections for low-level operations
-
faststr-fork
Faststr is a string library that reduces the cost of clone
-
xmltv
electronic program guide (EPG) parser and generator using serde
-
w3f-pcs
Collection of tools for augmenting polynomial commitment schemes
-
enum-collections
Collections data structures optimized for Enum, initializable at runtime
-
awint
Arbitrary width integers
-
mhgl
Matts HyperGraph Library (MHGL). A straightforward library for hypergraph datastructures.
-
hlist2
Compile-time heterogeneous list implementation
-
mule-map
A hybrid between a HashMap and a lookup table
-
pldag-rust
A DAG-based framework where nodes encode arbitrary Boolean operations over literal leaves, with built-in support for assignment propagation and ILP export
-
i24
working with 24-bit integers
-
packedvec
Store vectors of integers efficiently
-
simd_aligned
Safe and fast SIMD-aligned data structures with easy and transparent 'flat' access
-
signalk
parse signalk maritime data
-
btree-vec
A growable array (vector) implemented using a B-tree
-
hypergraph
data structure library to create a directed hypergraph in which an hyperedge can join any number of vertices
-
rdf-model
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
prio-graph
A lazily populated directed acyclic graph with top-level priority ordering
-
ttgraph
Typed/Transactional Graph container
-
edtui-jagged
A jagged array data structure for the edtui editor
-
treeclocks
Various Tree Clock data-structures and utilities
-
queue-file
lightning-fast, transactional, file-based FIFO
-
asbytes
Traits for viewing data as byte slices or consuming data into byte vectors. Relies on bytemuck for POD safety.
-
endpoints
A collection of data structures for the OpenAI-compatible endpoints
-
orange-trees
Tree data structure with several methods to query and manipulate nodes
-
linearize
Types that are enumerable and an array-backed map
-
tetengo_trie
A trie library implemented with a double array
-
libwebnovel
enabling users to get chapters of a webnovel, with multiple available backends
-
intervaltree
generic implementation of an immutable interval tree
-
exponential-decay-histogram
A histogram which exponentially weights in favor of recent values
-
xml2arrow
Efficiently convert XML data to Apache Arrow format for high-performance data processing
-
rc-u8-reader
A tiny implement for reading
u8
data from a reference counted instance -
std-macro-extensions
A collection of macro extensions for Rust's standard library data structures, simplifying the creation and manipulation of common collections such as HashMap, Vec, and more
-
i_tree
Expiration key tree. Usable in algorithms like swipe line. Only for uniq elements
-
stacked_errors
high level error propogation with software controlled backtraces
-
array-deque
Fixed-capacity circular buffer implementations: heap-allocated ArrayDeque and stack-allocated StackArrayDeque. Efficient O(1) operations, no_std support.
-
flatk
Flat layout abstraction toolkit
-
optionchain_simulator
OptionChain-Simulator is a lightweight REST API service that simulates an evolving option chain with every request. It is designed for developers building or testing trading systems…
-
lean_string
Compact, clone-on-write string
-
snowflake_me
A distributed unique ID generator inspired by Twitter's Snowflake
-
merkle-cbt
generating efficient Merkle tree and combined Merkle proof based on complete binary tree
-
incremental-topo
Data structure to maintain an incremental topological ordering over a collection of values
-
stash
An amortized
O(1)
table for cases where you don’t need to choose the keys and want something faster than a HashTable -
ittapi
High-level Rust bindings for ittapi
-
infra-compass-db
Parse and manage the NREL's INFRA-COMPASS data
-
lsph
Learned Spatial HashMap
-
seedling
hierarchical seeded pseudo-random number generators
-
json-number
JSON number parsing and storage
-
changes-stream2
couchdb follower
-
snowid
generating SnowID - a Snowflake-like timestamp-based distributed unique identifier
-
divbuf
Buffer object that can be recursively divided into smaller buffers
-
graph-api-lib
Core library for the graph-api ecosystem - a flexible, type-safe API for working with in-memory graphs in Rust
-
differential-dogs3
Advanced join patterns in differential dataflow
-
do-notation
Monadic do syntactic sugar
-
kentro
A high-performance Rust implementation of K-Means clustering algorithms
-
csf
compressed static functions (maps) that use perfect hashing and value compression
-
sized-chunks
Efficient sized chunk datatypes
-
ndarray-layout
definitions and transformations for multi-dimensional array data layouts
-
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. -
bv
Bit-vectors and bit-slices
-
ux-primitives
Graphics Primitives for Angular Rust
-
eternaltwin_dinoparc_store
Dinoparc store implementation
-
vp-avl
A combined Vantage-Point AVL tree, to make VP trees updateable
-
combo_vec
A blazingly fast no-std vector-like ADT using the stack (and optionally heap for overflow)
-
fastset
Fast set implementation for dense, bounded integer collections, optimized for quick updates and access
-
keymaps
standardized encoding for key codes
-
cuckoofilter
Cuckoo Filter: Practically Better Than Bloom
-
differential-dataflow-master
An incremental data-parallel dataflow platform
-
blart
adaptive radix tree packaged as a BTreeMap replacement
-
rpds-pathtree
Immutable, path-addressable tree data structure
-
attribute-search-engine
Generic search engine for rows with attributes using different matchers
-
bose_einstein
A data structure that efficiently partitions elements into two sets
-
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…
-
entid
generating and validating type-safe, prefixed entity identifiers based on UUIDs and ULIDs
-
signvec
Vector implementation for fast, sign-based manipulation of dynamic collections
-
pi_buckets
lock-free & auto-expansion buckets
-
roussillon-type-system
A type system for a programming language
-
orx-fixed-vec
An efficient fixed capacity vector with pinned element guarantees
-
pi_world
ecs world
-
rust_multistack
Support for two-dimentional stacks for the Rust programming language
-
plain
A small Rust library that allows users to reinterpret data of certain types safely
-
slabmap
HashMap-like collection that automatically determines the key
-
seoul
trait Isomorphism
-
ball-tree
K-nearest neighbors
-
velcro
Convenience macros for initializing vectors, hash maps and other Rust collections
-
flat_spatial
Flat spatial partitionning algorithms and data structures
-
int-vec-2d
Vectors, points, rectangles, etc. with
i16
coordinates. -
wybr
Collection of preferential voting methods
-
generic_singleton
allowing for generic singleton patterns
-
bit_ops
Common bit-oriented operations on primitive integer types with a focus on
no_std
andconst
compatibility. Unlike other crates that provide tooling to create sophisticated high-level types with bitfields… -
among
The enum
Among
with variantsLeft
,Middle
andRight
is a general purpose sum type with three cases -
comparable_test
comparing data structures in Rust, oriented toward testing
-
rt_ref
Internal
Ref
types forrt_ref
andrt_vec
-
gpt_disk_types
GPT (GUID Partition Table) disk data types no_std library
-
sparse-merkle-tree
Sparse merkle tree implement in rust
-
c_vec
Structures to wrap C arrays
-
loro-delta
Loro internal library. It's used as a delta between two versions of text or lists. It's also an efficient Rope.
-
vortex-sparse
Vortex Sparse array
-
pdatastructs
probabilistic data structures
-
xor_name
Xor Type
-
flex_array
A
#[no_std]
flexible array much like std::Vec but with custom indices and length and capacity types -
ergo_avltree_rust
cryptographically authenticated dictionary based on AVL tree
-
interavl
An optimised interval tree for efficient interval stabbing
-
intrusive-lru-cache
An LRU cache implementation using intrusive data structures
-
rs-ecs
reasonably simple entity component system
-
jaggedarray
Multidimensional jagged array
-
field_access
Dynamically access struct fields
-
ndtensor
An n-dimensional tensor
-
windowed-infinity
data structure representing an infinite sequentially writable u8 vector of which a small view has writes to it preserved. This is primarily useful when implementing CoAP block-wise transfers…
-
options
The package provides a data structure for managing named parameters
-
stack-queue
Heapless auto-batching queue
-
ptrie
Generic trie data structure implementation (prefix tree) with support for different key and value types, and functions to search for common prefixes or postfixes
-
pfds
Purely Functional Data Structures
-
tuplez
Tuples represented in recursive form
-
roadmap
model a project roadmap as a directed acyclic graph
-
mutcursor
Safely stores mutable references to parent nodes, for backtracking during traversal of tree & graph structures
-
adflib
handle amiga disk files
-
ndarray-histogram
Histogram support for n-dimensional arrays
-
open_menu_standard
OpenMenuStandard (OMS) specification
-
ordsearch
A data structure for efficient lower-bound lookups
-
fffl
A contiguous First-fit Freelist
-
anymap2
A safe and convenient store for one value of each type
-
beap
Bi-parental heap data structure implementation in Rust
-
nlist
inline-allocated list with statically tracked length
-
evict
Page eviction policies: LRU, LRU-k, LIRS, SLRU etc
-
odht
hash tables that can be mapped from disk into memory without the need for up-front decoding
-
hextree
Location to value mapping
-
kollect
Collections made ergonomic for gamedev usecases
-
kempt
Ordered collection types with no unsafe code and no_std support
-
quantor
Declarative quantifiers for filtering, validation, and testing in Rust
-
packed-uints
Array of uints that scales from u4 to u32 to minimize wasted space while still being fast
-
smooth-json
opinionated, customizable utility to flatten serde_json Value variants into serde_json Objects ready for use in columnar or table-like usages
-
linker-set
Declarative programming via linker-constructed arrays
-
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
-
any_vec
Type erased vector. Most operations can be done without type knowledge. Mostly zero overhead.
-
uuid-rs
Universally Unique IDentifier (UUID)
-
atelier
a Computational Workshop for Market Microstructure Modeling, Synthetic Simulation and Historical Replay
-
uid_store
Generate random uid strings containing letters, numbers, or base62 values
-
cell-grid
2d grid container
-
tailcall-chunk
persistent data structure for efficient append and concatenation operations
-
try_reserve
Stable implementation of the TryReserveError from std for custom collections
-
gix-merge
gitoxide project implementing merge algorithms
-
jumprope
fast rope (fancy string) library built on top of Skiplists
-
windows-collections
Windows collection types
-
stavec
Stack-allocated vector with static capacity
-
half-2
Fork of starkat99/half-rs. Half-precision floating point f16 and bf16 types for Rust implementing the IEEE 754-2008 standard binary16 and bfloat16 types.
-
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
. -
secretmangle
mangling sensitive data in memory with a random key
-
map_vec
The Map and Set APIs backed by Vec
-
small-fixed-array
providing fixed length immutable collections with a low memory footprint
-
radixmap
Rust-based Radix Tree for fast prefix lookup, supporting named param, glob, regex
-
hashify
Fast perfect hashing without dependencies
-
easy-tree
efficient tree structure library for Rust with recursive traversal
-
metrics-exporter-opentelemetry
🐻❄️🎈 A
metrics
exporter over OpenTelemetry -
superset_map
Map that stores distinct supersets based on the total order defined
-
bitvec_helpers
BitVec based bitstream reader and writer
-
rbtree
the rbtree for Rust
-
swamp-eval
tree-walking interpreter for executing the Swamp Abstract Semantic Graph (ASG) from
swamp-semantic
. Primarily for debugging/testing, not performance. -
mikufans-proto
gRPC APIs for Mikufans
-
arraystring
Fixed capacity stack based generic string
-
space
providing abstractions for spatial datastructures and search
-
livestock-rs
comprehensive library and CLI tool for managing, identifying, and working with livestock breeds, growth rates, and health. Designed to support farming and ranching applications, breed registries…
-
any-rope
A fast and robust arbitrary rope for Rust. Based on Ropey.
-
fastbit
A fast, efficient, and pure Rust bitset implementation for high-performance data indexing and analytics
-
optional
supplies a number of Option-like primitive types
-
value-ext
Serde Json Value Extension Trait (more Value type later)
-
tagid
Defines a newtype labeled tagging for different types of ids
-
mediumvec
Vector types optimized for space, including a 32-bit Vec
-
bankarr
Array-like but growable vectors
-
data_reader
A data loading library for data scientist
-
bevy_archive
An experimental ECS world snapshot system built on Bevy, featuring structured archetype storage and manifest-based serialization
-
vec-belt
Multi-threaded bulk-append, single-threaded consume
Vec<T>
-
compact-rc
Low-memory reference-counting pointers
-
smart_led_effects
A collection of effects for LED strips
-
symbol_table
A symbol table that's fast, concurrent, and gives stable references
-
coitrees
A very fast data structure for overlap queries on sets of intervals
-
memtally
A wrapper for some collection types that keeps track of indirectly allocated heap memory
-
queues
Efficient FIFO Queue data structures
-
persistent-kv
Persistent key-value store
-
compactor
A collection which compresses old data
-
numeric-statistics
Numeric Statistics: functions for min, max, average, variance, standard deviation, and more to come
-
pipebuf
Efficient byte-stream pipe buffer
-
butterfly-common
Common utilities for the butterfly-osm toolkit
-
drthashbrown
port of Google's SwissTable hash map
-
simple-grid
2d-grid structure
-
pasture-core
A framework for working with point cloud data
-
xtask-toolkit
A collection of useful tools for xtask building
-
hash_histogram
HashHistogram creates histograms with keys of any hashable data type. Features include rank ordering and mode.
-
closed-interval-set
Unions of closed intervals as containers of pairs
-
sexprs-data-structures
sexprs is a minimal lisp dialect to evaluate written in Rust
-
composable-indexes
In-memory collections with composable indexes
-
cbsk_socket
socket callback tool
-
nodit
Discrete Interval Tree Data-Structures, which are based off BTreeMap
-
hprtree
A Hilbert-Packed-R-Tree implementation for rust
-
minivec
A version of Vec that's only the size of a single pointer
-
chemfiles
Modern library for chemistry trajectories reading and writing
-
tournament-kway
k-way merge using a tournament tree
-
type-set
A set of heterogeneous types
-
suffixarrayview
Creates a view of a suffix array
-
rustdf
interacting with Bruker TDF formatted Raw Data
-
h3o-ice
Frozen{Map,Set} for H3 cells, based on finite state transducers
-
re_string_interner
string interning library
-
rspack_sources
webpack-sources port
-
open-payments-iso20022-reda
Open Payments - Message Parsing Library - ISO20022 REDA
-
overlay-map
A two-layered map data structure for Rust that tracks current and previous values for each key — with zero-clone, in-place state transitions
-
rust-tagged
A lightweight tagged type abstraction for type-safe IDs, etc
-
cow_hashmap
Hashmap with copy-on-write semantics that requires no locks
-
dia-i18n
-
bitvek
bit vector implementation
-
mumu-test
Test suite plugin for the Lava language
-
edifact-types
Bindings for the Edifact standard
-
tree-sitter-traversal2
Traversal of tree-sitter Trees and any arbitrary tree with a TreeCursor-like interface
-
yrs_tree
implementing a CRDT-based tree data structure powered by Yrs
-
disjoint
Fast and safe implementation of the disjoint-set data structure
-
unordered-pair
A tuple struct representing an unordered pair
-
linear-hashtbl
Linear probing hash table
-
surface-grid
providing data structures for square-tiled grids wrapped around the surface of certain objects
-
vecdeque-stableix
Deque with stable index values
-
mrcon
MongoDB to RabbitMQ connector library for streaming change events
-
loc_api
interact with the loc.gov API
-
graph-api-test
Test utilities and property-based testing for the graph-api ecosystem
-
wavltree
An intrusive Weak AVL Tree
-
rostl-oram
Oblivious RAM (ORAM) implementations
-
miny
Box<T> with small value optimization
-
hi_sparse_bitset
Hierarchical sparse bitset. Incredibly high performance. Compact memory usage.
-
monument
A fast and flexible composition generator
-
type-map
typemap container with FxHashMap
-
bitboard64
A 64-bit bitboard useful for chess programming
-
azalea-inventory
Representations of various inventory data structures in Minecraft
-
skippy
Highly flexible worst-case O(log n) intrusive skip list
-
tailvec
Split Vec to mutable slice and TailVec, the TailVec can push or pop etc
-
virtfw-libefi
read + write efi data structures
-
rust-tls-duplex-stream
Full Duplex stream Wrapper around rust-tls
-
rshyper-hmap
implements the hypermap implementation (a map-based hypergraph) for the rshyper framework
-
orn
A general implementation of the sum type. Meant to be a generic counterpart to tuples.
-
hashheap
data structures that combine a hashmap and a min/max priority heap, with main operations requiring O(1) or O(log n) time
-
psrutils
few utilities to facilitate pulsar science projects in rust
-
riddance
retiring, recyclable, reservable IDs
-
mapgraph
A directed graph that can also be used as an arbitrary map
-
orx-pseudo-default
PseudoDefault trait allows to create a cheap default instance of a type, which does not claim to be useful
-
mago-formatter
Reformats PHP source code according to configurable style rules, ensuring consistent code style across a project or organization
-
smodel
Symbol semantic modeling for Rust
-
unsized-vec
Like Vec, but for unsized values
-
polytype
A Hindley-Milner polymorphic typing system
-
chunked_vec
A vector-like data structure that stores elements in fixed-size chunks for better memory management
-
oats-rs
Short, unique ids without the hassle of random uuids
-
eventio
A collection of event I/O processors for event-processing applications
-
starling
This tree structure is a binary merkle tree with branch compression via split indexes
-
bbse
Backward Binary Search Encoding — minimal and deterministic scheme for sorted domains
-
rc-vec
RcVec based on Rc and can be converted from Rc without allocation
-
snowflake-ng
Dead easy and high performance
snowflake
implemented in Rust -
shardtree
A space-efficient Merkle tree with witnessing of marked leaves, checkpointing & state restoration
-
smallvec-wrapper
Macro and common structs to play with
smallvec
-
abstract-bits
Turn any combination of bit and byte fields into a structs
-
griddle
A HashMap variant that spreads resize load across inserts
-
hidreport
HID Report Descriptor and HID Report parser
-
string-newtype
New Type idiom helper for string-like types
-
ninjabook
A lightweight and high performance orderbook
-
ankurah-storage-sled
Ankurah storage engine using Sled
-
vista
displaying and formatting arrays, matrices and tensors in the terminal
-
walker-extras
Additional functionality for SBOM and CSAF walker
-
lru-st
A package providing a Vec based doubly linked list implementation and related data structures
-
slack-blocks
Models + clientside validation for Slack's JSON Block Kit
-
succparen
Succinct data structures library for balanced parentheses representation
-
keyed-set
Keyed Set: a hashbrown-based HashSet that indexes based on projections of its elements
-
kn0sys-ndarray-stats
Statistical routines for ArrayBase, the n-dimensional array data structure provided by ndarray
-
span-map
A data structure for efficiently managing sets of values over spans/ranges
-
indexical
indexed collections
-
cpx-coords
power the rust-quantum project, this library provides a robust
Cpx
type, specifically optimized for the intensive complex number multiplications required for quantum gate applications and tensor product operations… -
threshold
data structures
-
unnamed_entity
Strongly-typed indexing for vectors and other structures
-
gauze
Probabilistic set membership filters with a simple interface
-
aliasable
Basic aliasable (non unique pointer) types
-
array-linked-list
A data structure, which combines the advantages of dynamic arrays and linked lists
-
flatten_objects
A container that stores numbered objects. Each object can be assigned with a unique ID.
-
parallel_frontier
Queue-like frontier for breath-first visits on graphs that supports constant-time concurrent pushes and parallel iteration
-
gctree
cache-friendly, graph-like, arena-allocated datastructures
-
fast-graph
A fast, lightweight and extensible implementation of a graph data structure
-
traitgraph-algo
Graph algorithms based on the traitgraph crate
-
entity_data
A container for entity component data
-
patternutils
Tiny utility library for some common design patterns
-
vector
The package provides a vector database allowing for efficient search of nearest neighbors
-
lox
Fast polygon mesh library with different data structures and traits to abstract over those
-
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.
-
rangeset
Integer collection backed by ranges with set operation support
-
linker-trace
Data structures for storing trace outputs from the Wild linker
-
limq
Queue with a controller for monitoring queue elements
-
balanced-tree-index
constant-time manipulation of a complete binary tree with a flat in-memory representation
-
min-max-heap
An efficient, double-ended priority queue
-
facet-diff
Diffing capabilities for types implementing the Facet trait
-
libwebnovel-storage
A complement to libwebnovel: this package handles downloading and organizing collections of followed webnovels
-
solvent
Dependency Resolver library
-
vectree
Vector-buffered tree collection with post-order, depth-first, mutable/immutable iterator
-
cutoff-common
A collection of common utilities and helpers used across Cutoff projects
-
parametrized
Supply useful iterating methods for user-defined types which are parametrized by type parameters
-
vec-collections
Rust collections that are newtype wrappers around smallvec
-
cbsk_base
locked version cargo crates
-
chinese-rand
Random generation of data structures in Chinese, using Rust
-
slice_ring_buf
A ring buffer implementation optimized for working with slices
-
astarte-interfaces
Interfaces used by Astarte to define how data is exchange with a Device
-
rtree_rs
R-tree for Rust
-
onebuck
An efficient unordered dynamically-sized data structure
-
mem_btree
A Data Structure of BTree Implemented with Rust, support snapshot. not use any unsafe lib.
-
vicardi
JSON VCardArray Generator that uses Serde
-
plane-2d
Continuous 2D data structure representing infinite 2d plane
-
im-lists
Persistent unrolled linked lists and vlists
-
range-map
Maps and sets implemented using ranges
-
iterable
collection like types
-
tex_engine
A modular crate for building TeX engines
-
takeable
Container type that allows for temporarily moving out of the container, or permanently moving out and invalidating the container
-
swamp-core-extra
Rust runtime implementations for Swamp core library collections (Vec, Map, Grid, Stack, etc.)
-
avltriee
Customized version of AVLTree library.Process the same value in the third branch. One data is immovable from one row, and positional relationships such as left, right, and parent are all referenced by row numbers…
-
strict
collections with strict bounds
-
tcio
Collection of utility types
-
trie-root
In-memory patricia trie operations
-
sortedlist-rs
A fast sorted list data structure in rust
-
ligature
Ligature's data model in Rust
-
indexed_json
Index json files like a database
-
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…
-
spart
A collection of space partitioning tree data structures for Rust
-
microkelvin
tree traversal over annotated data structures
-
palettevec
A palette compressed vector library for potentially insane runtime compression ratios
-
unique_id_lookup
Associative Array specifically designed for integer keys. Significant performance boost over conventional hash maps.
-
art
adaptive radix trie
-
dcl_data_structures
Data structures for for deep_causality crate
-
sbbf-rs
Split block bloom filter implementation
-
rbitset
A bit set, being able to hold a fixed amount of booleans in an array of integers
-
hifa-xml-schema
Structure generator from XSD source file
-
treaplist
A Treap-based list implementation
-
utote
Stack allocated uint multiset, with optional SIMD implementations
-
rust_flightweather
Decodes METAR and TAF
-
fixed-capacity-vec
Variable-length buffer backed by a fixed-size heap array
-
tinyvg-rs
A low-level library for parsing binary TinyVG files into Rust data structures
-
card-est-array
Infrastructure for managing large arrays of cardinality estimators
-
stac
SpatioTemporal Asset Catalog (STAC) specification
-
mih-rs
Multi-index hashing (MIH) for neighbor searches on binary codes in the Hamming space
-
tree_arena
An arena allocated tree
-
identity_map
Identity-based maps
-
lignin
A virtual DOM structure, primarily for web use
-
atomic-slot
lock-free, atomic slot for transferring ownership of Box<T>
-
mmdb
A std-collection-like database
-
wrapped_slab
WrappedSlab: Auto-generate newtype idiom based on a Slab
-
vec-strings
Store any string efficiently in an immutable way
-
singletonset
SingletonSet
data structure, which makes it easy to store a single instance each of various types within a single set -
paginate
framework agnostic pagination crate, that is especially suited for databases, slices and collections. Paginate calculates the range of pages indexes, making it ideal for accessing slices…
-
scarf-syntax
A helper crate of scarf for expressing a SystemVerilog concrete syntax tree
-
hydroperfox-smodel
Semantic modeling for Rust
-
ascent-byods-rels
data structures for Ascent relations, made possible by Ascent's BYODS feature
-
btree_experiment
implements a BTreeMap similar to std::collections::BTreeMap
-
regroup
regrouping arrays
-
stable-map
A hash map with temporarily stable indices
-
arrow-message
implements a way to define messages according to the Arrow format in both Rust and Python
-
hora-id
A 64-bit time-based sorted unique ID generator that includes the current time in the ID
-
beetle_bits
A collection of bit-based types. Currently only u1 (1bit uint) and f3 (3bit float) are implemented
-
hotel
Collection Data-structure to associate values with keys
-
gtfs-geojson
converter for GTFS to GeoJSON formats
-
mco-gen
Stackfull Generator Library in Rust
-
doubloon
Money datatype that supports both statically and dynamically typed currencies
-
host-port-pair
Host-port pair type
-
openligadb
API
-
libcint-src
libcint (C library) source or build specification
-
nested_intervals
nested & overlapping interval set functions, overlap, union, etc
-
dstructs
A collection of high-performance data structures for Rust
-
equivalent-flipped
Similar to
equivalent
crate, but flipsK
andQ
-
swimos_form
SwimOS Serialization and Deserialization
-
convenient-skiplist
Convenient and Performant SkipList with serde support
-
agb_hashmap
no_std hashmap implementation intended for use in the
agb
library -
sweetrpg-kv-objects
Objects for Key-value store
-
fixed_deque
A fixed size VecDeque to match Python Deque
-
timer-queue
Pure, minimal, and scalable timers
-
rostl-datastructures
Oblivious data structures for secure and efficient computation
-
data-source
that fetches data from different sources
-
leveled-hash-map
structure to separate values into different levels with keys. Every key-value entry which is not at the top level has a parent key at the superior level. Keys at the same level are unique…
-
flat_rbtree
A flat, index-based Red-Black Tree with no heap allocations. Ideal for performance-critical or memory-constrained environments.
-
datafusion-materialized-views
Materialized Views & Query Rewriting in DataFusion
-
varlen
Ergonomic variable-length types
-
booking_kit
A powerful and extensible booking toolkit for Rust — featuring core data structures, flexible status logic, and seamless integration into any reservation system
-
fixed-macro
Macros for creating fixed-point constants for types in the
fixed
crate -
fixedvec
A heapless version of the Rust vector type
-
strumbra
Umbra-style strings (also known as German strings)
-
rand_pool
Create a pool of random numbers pre generated thread safe
-
moniker
Automatically derive variable binding and alpha equivalence for abstract syntax trees
-
xorfilter-rs
Xor Filters: Faster and Smaller Than Bloom and Cuckoo Filters
-
nested_containment_list
A data structure for efficiently storing and querying nested intervals
-
slice-of-array
Extension traits for casting between slices and slices of arrays. (&[T] <-> &[[T; n]])
-
ef_rs
Elias-Fano encoding scheme
-
merkle-heapless
Statically-allocated Merkle Tree and Mountain Range
-
fast-ordered-buffer
A faster buffering implementation for asynchronous streams, trading off memory usage for speed
-
rle_vec
A vector like struct that stores data as runs of identical values. Useful for storing sparse data.
-
sparse-mem
Fixed-capacity, generation-tracked sparse array implementation optimized for the Swamp VM
-
mikel_binary_tree
search binary tree implementation
-
minimizer-iter
Iterate over minimizers of a DNA sequence
-
coca
Data structures with constant capacity
-
fuzzy_prefix_search
Fuzzy search for prefix matches
-
hit-data
Hierarchical Indexed Typed data structure
-
globalvar
declaring a global variable
-
floating_bar
Representing rational numbers using the floating-bar number type
-
jvs-packets
that provide structures for JVS protocols
-
scope-cell
temporary, scope-bound, and thread-safe mutation of data in Rust
-
madeleine
Transparent object persistence with predefined operations and state containers
-
gcollections
Generic traits over Rust collections library
-
char_index
efficient charwise indexing into a string
-
drtahash
A non-cryptographic hash function using AES-NI for high performance
-
pi_slotmap_tree
A tree structure implemented by dense memory linked list
-
avl
A map and a set implemented with an AVL tree
-
scryer-modular-bitfield
Allows to easily define bitfield types with modular building blocks. This is a forked version of the modular-bitfield crate with tweaks for use by Scryer Prolog.
-
indexed_arena
index-based arena without deletion
-
mset
/ multiset / bag implementation
-
arc-string-interner
An efficient cuncurrent string interning data structure with minimal memory-footprint and fast access to the underlying contents
-
envish
Search for environment variables
-
alloc-checked
Collections that don't panic on alloc failures
-
exhaustive-map
An exhaustive map for types with finite inhabitants
-
damped-springs
damped springs for smooth and springy motion
-
kg-tree
Generic object tree with Opath query language, similar to XPath
-
suff_collections
Fast realization of suffix array and suffix tree
-
pstd
parts of Rust std library ( different implementations, features not yet stabilised etc )
-
bitstring
traits and implementations
-
unbounded-interval-tree
An interval tree working with inclusive/exclusive bounds, as well as unbounded intervals. Provides helpers to fetch overlapping intervals, and difference of intervals.
-
iowrap
Small helpers for using io::Read/io::Write
-
multi-map
Like a std::collection::HashMap, but allows you to use either of two different keys to retrieve items
-
pi_slot
lock free Slotmap data structure
-
filetreelist
filetree abstraction based on a sorted path list, supports key based navigation events, folding, scrolling and more
-
swamp-script-source-map-lookup
Source map lookup for Swamp
-
traiter
Traits collection
-
validit
Validate data structures internal state
-
enum-toggles
A generic Rust library for managing toggles/flags using enums and bitvec
-
ndshape
fast linearization of N-dimensional array indices
-
sharded
Safe, fast, and obvious concurrent collections
-
gaoya
Locality Sensitive Hashing Data Structures
-
fingertrees
Immutable persisten finger trees
-
compact-calendar
Compact representation of a set of days based on a bit-maps
-
bloom-filter-yss
bloom filter for me or you
-
firims
fixed range integer maps and sets
-
kn0sys_ndarray
An n-dimensional array for general elements and for numerics. Lightweight array views and slicing; views support chunking and splitting.
-
flix
Types for storing persistent data about media
-
retaker
ecs implementation
-
dmfr-dataset-reader
Reads transitland folder and outputs graph of valid feeds and operators
-
libnv
Safe and rustic wrapper around libnv-sys
-
lum_libs
Serves as a central collection and re-export of all external crates used in the lum framework to ensure consistent dependency versions across the framework
-
leetcode-trees-rs
Tree Node LeetCode problems
-
digits
Custom “numeric” incrementor without u64 MAX limit in size. Like a score flipper for a custom character set.
-
hash-rings
Implementations of various hash rings
-
untis
accessing the Untis API
-
weave-draft
representing and manipulating weaving drafts
-
hash_cons
A type-safe hash-cons library
-
hicollections
C-liked Collections
-
umili
Mutate and observe Rust data structures
-
lctree
Link-Cut-Tree: self-balancing data structure to maintain a forest of rooted trees
-
chronofold
A conflict-free replicated data structure (a.k.a CRDT) for versioned text
-
index-ext
Index slices with arbitrary ints and as arrays
-
delatin
Fast TIN generation using Delaunay triangulation
-
slotted-egraphs
E-Graphs with name binding
-
unsure
handling unsure (optional) values that might fail, with an additional rejection variant
-
rb_tree
A Red Black Tree implementation in Rust
-
pimalaya-tui
Collection of crossterm widgets shared accross Pimalaya projects
-
akita
Mini orm for rust
-
loose-semver
Loose parser for Semantic Versioning
-
raphy
A graph data structure library
-
entity
that provides entity-like constructs
-
bytering
A ring buffer specialized for vectored reading and writing in blocking and async I/O
-
fluxus-api
High-level API for Fluxus stream processing engine
-
rstrie
A generalized Trie implementation for Rust
-
mumu-array
Array tools plugin for the MuMu/Lava language
-
standing-relations
Standing relations over a shifting dataset optimized for 'feedback loop' scenarios
-
collection_tools
General purpose tools to manipulate collections( containers like Vec/HashMap/HashSet )
-
lambda-runtime-types
Common structures for lambda architecture
-
opt_struct
Optional collections
-
settrie
Fast subset and superset queries
-
ux-dataflow
Data Processing Library
-
bst-hashmap
A binary tree implementation with a hashmap-inspired interface
-
seq-map
Sequential Map
-
heapix
providing heap data structures
-
syntastica-themes
A collection of themes for syntastica
-
HArcMut
mutable arc
-
named_colors
that provides named colors in RGB and Hexadecimal formats
-
evento
A collection of libraries and tools that help you build DDD, CQRS, and event sourcing
-
point-nd
flexible no-std struct to model points on axes of any dimensions
-
sortedvec
a sorted vector that enables quick lookups
-
retworkx
A python graph library implemented in Rust
-
deepmesa
fast Data Structures and Algorithms in Rust. Every data structure is hand crafted for performance, well tested and has an extensive API.
-
code_location
UNMAINTAINED! Use std::panic::Location instead!
-
keysymdefs
A collection of key symbol definitions
-
flatarray
flattened iterator, that acts as if it still was an iterator of iterator
-
moka-cht
Lock-free resizeable concurrent hash table
-
ux-dx
3D Graphics Primitives for Angular Rust
-
handy
providing handles and handlemaps
-
densevec
Map like collection with usize indices that stores values contiguosly
-
slas
Static Linear Algebra System
-
nu-plugin-engine
Functionality for running Nushell plugins from a Nushell engine
-
grangers
working with genomic ranges and annotations
-
cseq
compact sequences
-
populated
Collection types that are guaranteed to be populated (i.e. non-empty). Based on std::collections types.
-
omango-util
Utililites
-
planet_generator
[WIP] Generates data for galaxies, sectors, solar systems, planets and their inhabitants (Check README for features list)
-
expiringmap
a HashMap-backed TTL map
-
digit-sequence
Sequence of u8 digits
-
vortex-expr
Vortex Expressions
-
rtdlib
TDLib for rust
-
ndim
N-dimensional array for numerals in Rust similar to NumPy
-
oxidd-rules-bdd
Binary decision diagrams (BDDs) for OxiDD
-
kurtbuilds_std_ext
Standard library extensions
-
bytes_deque
A growable bytes deque in Rust, providing access to the raw pointer
-
safe-hook
A safe and simple inline hook library for Rust
-
sigma-types
Types checked for an invariant
-
streaming_algorithms
SIMD-accelerated implementations of various streaming algorithms, including Count–min sketch, Top k, HyperLogLog, Reservoir sampling
-
mywheel-rs
Reinventing my wheel
-
ndstruct
Structures for N-dimensions
-
nimbusqueue
fifo collection
-
staticvec
Implements a fixed-capacity stack-allocated Vec alternative backed by an array, using const generics
-
grid-arcium-fork
Dynamic generic 2D data structure (Arcium fork)
-
ladata
& modular data model
-
rocstr
An immutable fixed capacity stack based generic copy string
-
typed_graph
Staticly typed graph library
-
lazy_vec
A lazily initialized (but eagerly allocated) Vec-like datastructure
-
etospheres-labs-merkle
Merkle tree implementation with support for generation of inclusion proofs
-
blas-array2
Parameter-optional BLAS wrapper by ndarray::Array (Ix1 or Ix2)
-
sql-json-path
SQL/JSON Path implementation in Rust
-
lodtree
help create octrees and quadtrees for chunked level of detail
-
try-lazy-init
Fallible lazy initialization
-
taskchain
A block-based, non-circular double-linked list implementation for Rust
-
fibonacci_heap
A Fibonacci Heap implementation in Rust
-
fixed-collections
Dynamically allocated ungrowable collections
-
chainbuf
Fast chained buffers
-
cow_vec_item
Copy-on-write Vec, available on stable rust
-
paginator-rs
Pagination trait for Rust collections
-
box-collections
A no_std compatible implementation of the collection crate
-
spaghetto
making double-ended data structures, like an always-contigouous double-ended queue (deque) and double-ended string
-
graphix
representing undirected graphs using a compressed adjacency list
-
implies
A parser for logical formulas
-
hotload
Zero cost hot update dynamic library; supporting DLL, SO
-
ai-transform
Procedural macro for AI-powered data transformations between JSON-serializable types
-
malwaredb-api
Common API endpoints and data types for MalwareDB components
-
appendlist
An append-only list that preserves references to its elements
-
rand-select
a tiny choice selector
-
frozen-collections
Fast partially-immutable collections
-
pvec
RRB-Tree based persistent vector implementation
-
compressed-intvec
A compressed integer vector with fast random access that stores values with instantaneous codes in a bitstream
-
csvenum
Generate code for enums with associated constants from a .csv in your command line
-
cacheline-ef
Per-cacheline encoding of sorted integer sequences
-
cbsk_log
log tool
-
fid
FID (Fully Indexable Dictionary) implementation for Rust
-
cpx-mat2by2
power the rust-quantum project, this library provides a robust AltMat type for a single qubit, specifically optimized for the intensive complex number multiplications required for quantum…
-
map-macro
Declarative macros for statically initializing collections
-
linear_collections
Map and Set types backed by linear data structures
-
lr_trie
Left-Right trie is trie capable of mapping any string to any string
-
rdf-writer
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
contack
easy contact library
-
contexts
Implements a type for treating several hashmaps as one
-
modular-bitfield-msb
Allows to easily define bitfield types with modular building blocks. MSB-first version.
-
variant-rs
VARIANT support for Rust. Clean, idiomatic handling of WinAPI/COM results.
-
orx-selfref-col
SelfRefCol is a core data structure to conveniently build safe and efficient self referential collections, such as linked lists and trees
-
progscrape-application
progscrape.com application logic
-
smart-string
A collection of string types and traits designed for enhanced string manipulation
-
disjoint-sets
Three union-find implementations
-
pocketbase-sdk
Pocketbase SDK
-
higher
Functors, Applicatives, Monads and other bad ideas
-
ahtable
Array Hash Table implementation
-
dsalgo
A package for Datastructures and Algorithms
-
debug_match
debugging and matching patterns in data structures
-
grid-engine
A flexible and efficient library for managing 2D grid-based layouts with automatic collision handling and dynamic vertical expansion
-
persist-o-vec
A Vec type that aims to have stable indices and memory location
-
spenso
A tensor (n-dim array) network, iterating, and contraction (using automatic abstract index matching) library
-
objectionable
storage of unsized types inline inside allocated objects
-
clonelicious
macro library that simplifies cloning and closure execution. The
clone!
macro automatically clones variables and immediately executes the closure with the cloned values, streamlining… -
segtri
Segment tree with customizable data type and update operations
-
basic_trie
Trie implementation in Rust
-
influxdb-dispatcher
Batch metrics collection using influxdb
-
type-freak
Collection of typed data structures, trait operators and aliases
-
beach_map
slotmap
-
marrow
Minimalist Arrow interop
-
intervals-rs
intervals
-
float16
Half-precision floating point f16 and bf16 types for Rust implementing the IEEE 754-2008 standard binary16 and bfloat16 types
-
rexsgdata
Scatter-Gather Data Descriptors
-
id_collections
Index-oriented programming in Rust
-
kdtree-simd
K-dimensional tree in Rust for fast geospatial indexing and nearest neighbors lookup
-
dsa_abc
basic data structure and algorithms. Usability and performance is priority
-
cds
Collection of Optimized Data Structures
-
netlist
generic netlist data structure for VLSI design
-
sliding_window_alt
A structure that holds the last N items pushed to it
-
mcp-protocol-types
Shared types and protocol definitions for the Model Context Protocol (MCP)
-
collectivity
Generic collection traits
-
stack-map
constant-size associative container for building higher-level data structures out of
-
identified_vec
Like HashSet but retaining INSERTION order and without
Hash
requirement on the Element type -
redmaple
offers an oppinionated yet extremely flexible data modeling system based on events for backend applications
-
assoc
Treat vectors like associative arrays
-
minimizer-queue
Fast computation of minimizers using a monotone queue
-
slab_tree
A vec-backed tree structure with tree-specific generational indexes
-
text-document
Text document structure and management
-
netcrab
creating and exporting Petri nets
-
aircraft_icao_country
aircraft ICAO codes and their country of origin
-
im_ternary_tree
Structural sharing ternary tree, i.e. immutable data structure
-
cutoff_list
A linked-list structure where each element tracks how many predefined "cutoff points" precede or coincide with its position in the list sequence
-
sif-kdtree
immutable, flat k-d tree
-
re_blueprint_tree
The UI for the blueprint tree in the left panel
-
wang_utils_map
个人使用的rust工具库
-
commitlog
Sequential, disk-backed commit log library
-
safe_index
Type-safe indexes
-
set_genome
A genetic data structure for neuroevolution algorithms
-
qualified_do
Composable _qualified_ do expressions for Rust, supporting monad- and applicative-like structures
-
big_unsigned_ints
Big Unsigned Integers ranging from U256 to U2048 using u64 arrays all under a fixed-size of 32
-
object-collection
A collection that can store multiple values of types
-
geosite-rs
that parses geosite.dat file format
-
b-k-tree
Burkhard-Keller tree data structure for finding items separated by a small discrete distance
-
astro-float-num
Multiple precision floating point numbers implemented purely in Rust
-
range-traits
Ranges related traits
-
reactive-signals
dx-first scope-based fine-grained reactive system
-
bit-int
An arbitrary fixed bit-width integer library
-
sucds
Succinct data structures in Rust
-
radix-heap
Fast monotone priority queues
-
lockerroom
Readers-writer access to individual cells of your collection!
-
taskai-schema
Schema definitions for TaskAI - structured task representation for AI agents
-
path-value
Universal type and access property(s) by path
-
ffi-toolkit
A collection of functions useful for working with the Rust FFI
-
rsor
Reusable slice of references
-
cses-rs
A CSES spec impl in Rust
-
qutee
A quadtree implementation
-
expanding_slice_rb
A self-expanding ring buffer similar to VecDeque optimized for working with slices of data
-
write_x86_64
help you write x86_64 assembly code
-
tinybox
Like
Box
, but with an optimization that avoids allocations for small data-structures -
glace
A type-safe, user-friendly proc macro for embedding a file tree into your code
-
flatten_structs
Allows inlining fields into another struct
-
fdm-toolkit
reading and writing 4D Miner (0.2.1.4 Alpha) game-data
-
minsize
Collections with a statically known minimum size (using const generics)
-
hash_ring
Consistent Hashing library for Rust
-
keyvalues-parser
A parser/renderer for vdf text
-
hybridmap
Hybrid map using smallvec and the std hashmap
-
bitlab
Extracting a range of bits from a binary data source
-
tagged-core
A lightweight tagged type abstraction for type-safe IDs, etc
-
crdt-lite
CRDT library for Rust
-
nerio
generic for neural networks
-
tld
Top Level domain static hash map, tld list is obtained from of iana.org
-
broom
An ergonomic tracing garbage collector that supports mark 'n sweep garbage collection
-
probabilistic-collections
Various implementations of collections that use approximations to improve on running time or memory, but introduce a certain amount of error
-
swaybar-types
building swaybar status commands in rust
-
semver-eq
Parser and evaluator for Cargo's flavor of Semantic Versioning
-
phf_macros
Macros to generate types in the phf crate
-
cola-crdt
A text CRDT for real-time collaborative editing
-
linear-map
A map implemented by searching linearly in a vector
-
linked-syntax-tree
A doubly-linked syntax tree
-
froop
A functional reactive stream library for rust
-
atomic_ptr_cell
Safe no_std repr(transparent) wrapper for AtomicPtr and &AtomicPtr with an api similar to a cell
-
bpht
A bit-packed hash table implementation using hopscotch hashing for 32-bit keys and values
-
prefix-sum-vec
Compressed storage for highly repeating elements, with
O(log n)
lookups -
rj
reactive json
-
manganis-common
Ergonomic, automatic, cross crate asset collection and optimization
-
graph-api-petgraph
Integration between graph-api and petgraph - use graph-api's traversal system with petgraph structures
-
once-list2
A single linked list which is backed by
OnceCell
. You can append the value to the non-mutableOnceList
. -
roers
prepare augmented annotations for single-cell RNA-seq analysis
-
text-style
Types and conversions for styled text
-
array_map
Map backed array for fixed size keys with O(1) performance
-
forest-ds
secure tree structure
-
mutcrab
written in rust that contains various classic data structures
-
higher-free-macro
macro that creates a (naive) Free Monad type based on a user-supplied Functor. It uses the traits from the "higher" crate. This macro is a port of the Control.Monad.Free part of the…
-
paginator-utils
Shared pagination response structures
-
gridava
2D coordinate systems
-
gridly
managing fixed-size 2D spaces
-
ultragraph
Hypergraph data structure
-
astrie
High-performance hybrid data structure that combines the benefits of tries and B+ trees to provide efficient key-value storage with adaptive behavior based on data patterns
-
grid-tree
Pixel quadtrees and voxel octrees
-
enum-tag
Proc. macro for generating enum discriminant types.
-
index_many
A proof of concept for indexing an slice at multiple locations at once
-
parallel_vec
A generic contiguous collection of heterogenous values
-
indexed_vec
IndexVec
fromlibrustc_data_structures
-
onigiri
handling chars
-
art-tree
The Adaptive Radix Tree
-
fixed_bitmaps
A small crate implementing bitmap functionality around primitive Rust unsigned integers
-
lumi
processing text-based ledger files
-
mapack
mapbox vector tiles
-
ttmap
Trivial implementation of type map
-
delta-collections
Data structures with revertable operations called deltas
-
lapce-xi-rope
A generic rope data structure built on top of B-Trees
-
recursive_reference
way to walk on recursive structures easily and safely
-
nonempty-containers
Fast, zero-cost conversion, and fully inter-operable nonempty container types
-
any-range
AnyRange<T> enum can hold any Range*<T> type
-
gapbuf
Generic gap buffer
-
bdaddr
Bluetooth Device Address
-
graphix_io
reading and writing graphs from and to text files, based on the graphix crate
-
sum
General-purpose sum types
-
pna
PNA(Portable-Network-Archive) decoding and encoding library
-
linkedin-csv
Structs defined to hold the data as exported from LinkedIn
-
rshyper-algo
implements various algorithms for the rshyper framework
-
flat_enum
Expand nested enum into flattened enum
-
easy_collections
Wrappers around standard collections for ease of use and quick prototyping
-
rotated-array-set
An ordered set supporting O(1) rank and O(√n) inserts and deletes
-
morton-index
Types and functions for efficiently and easily work with Morton indices
-
genmap
generational map data structure with no dependencies
-
expiremap
Key-Value map where each value has a custom expiry time
-
search_trail
manager of variables that can save and restore their values
-
succinct
data structures for Rust
-
string-hash-interner
Efficient string interner with minimal memory footprint and fast access to the underlying strings
-
raw-btree
Generic B-Tree implementation
-
rustz
functional programming in Rust
-
linked-list
An alternative implementation of std::collections::LinkedList
-
aabel-multihash-rs
extends Hasher trait. The added functionality allows users to get sequeces of hash values. It can be used inside of implementations of probabilistic data structures such bloom filter or count-min.
-
easybitflags
making it easy to use bitflags in Rust
-
aph_disjoint_set
Disjoint set implementation with optimized memory usage and ability to detach elements
-
segment-tree
Quickly perform interval queries or modifications
-
utf8char
that supplies a utf8 encoded char
-
flat-tree
Series of functions to map a binary tree to a list
-
z_table
lookup functions for the standard normal table, also called Z table
-
castep-param-io
read, operate on and write castep
.param
parameter file -
mown
Maybe owned values. Wrappers for values that can be either owned or borrowed.
-
tree-flat
TreeFlat is the simplest way to build & traverse a pre-order Tree for Rust
-
bytesbox
ByteBox is a high-performance hash map implementation optimized for byte slices. It efficiently maps keys and values of type Vec<u8>, providing full ownership of the data. ByteBox uses…
-
maybe
An enum similar to Option but can also represent undefined values
-
spacetoken
Space allocator that is decoupled from actual storage
-
merkle-log
"Merkle Tree-Structured Log" defined in the paper "Transparent Logs for Skeptical Clients." https://research.swtch.com/tlog
-
tensorism
Multidimensional arrays with bounds included in the type system
-
gecs
A generated entity component system
-
shortguid
Short URL-safe Base64 encoded UUIDs
-
blockset-lib
BLOCKSET internal library
-
wasmedge-types
The common data structures for WasmEdge Rust bindings
-
dihardts_cstools
Collection of data structures and algorithms
-
mzdata-spectra
A subset of
mzdata
’s traits and spectrum data model -
manhattan-tree
A spatial tree which can effiently find closest key to a point, by manhattan distance
-
emcee
Python's emcee affine-invariant mcmc ensemble sampler
-
collectools
Collection traits and implementations for common crates
-
nakadi-types
A connector for the Nakadi Event Broker
-
flow_arena
A HashMap managed Graph Model with the concept of ownership
-
lru-mem
An LRU cache implementation bounded by memory
-
whale
A lock-free, dependency-tracking primitive for incremental computation
-
traitgraph-tsplib-io
Functions to read and write graphs in TSPLIB format
-
tinyvecdeq
VecDeque
-like data structures -
d4-gpmc-sys
wrapper around GPMC for d4
-
binn-ir
-
linked-vector
A hybrid linked list and vector data structure
-
tpntree
A N-dimensional generalization of region quad/oc-trees
-
unionfind
A union find library made for building type inference engines. Can be used as general purpose datastructure.
-
idbag
A bag of integers
-
range_bounds_map
[
RangeBoundsMap
] and [RangeBoundsSet
], Data Structures for storing non-overlapping intervals based of [BTreeMap
] -
mori
orientation library built around commonly used orientation representations used in crystallography and engineering applications. It contains conversion, rotation, and data analysis…
-
fn-store
A dynamic persistent value store using closure type as key and storing its return value
-
prehash
storing values with precomputed hashes
-
galemu
workaround for generic associated types (GAT) limited to lifetimes (GAL)
-
enso-data
A collection of useful data structures
-
open-payments-iso20022-admi
Open Payments - Message Parsing Library - ISO20022 ADMI
-
german-str-borrow
German/Umbra-style strings. Data is borrowed, static, or inlined
-
Sparse-Voxel-64Tree
A lib for handling Sparse Voxel Contrees
-
data_structure_traits
data structure collection traits
-
extindex
Persisted immutable index
-
bitstring-trees
Trees based on bitstrings
-
zellij_widgets
A wiget library for zellij
-
flatcontainer
A flat container representation for Rust
-
pas
strided slice
-
lesbar
String types that must encode legible text
-
circbuf
A growable circular buffer for working with bytes
-
cock-tier
Measure the power level of a peen
-
sweep-bptree
In memory locality aware b+ tree, faster for ordered access
-
mago-ast
Supplies the data structures and types for representing PHP code as an Abstract Syntax Tree (AST)
-
tuco
Tuco can automatically generate tuple representations of simple types. This is helpful if you want to create an API using plain types. Or if you want to provide an easy way to convert between types.
-
fenny
working with Fenwick trees
-
engcon
macros to define (eng)ineering (con)tracts on data-structure level
-
word-dictionary
data structure for word mapping. It can be used for language translation.
-
monistode-assemblers
A collection of assemblers for the monistode set of architectures
-
rdftk_skos
data model for the Simple Knowledge Organization System (SKOS) vocabulary
-
Xorfilter
No alloc membership approximation
-
tan-lints
A collection of lints for the Tan Language
-
generic-btree
Generic BTree for versatile purposes
-
tc-value
TinyChain's representation of a value which can be collated and stored
-
merkle-tree-bulletin-board
A public bulletin board based upon Merkle trees
-
predicates
boolean-valued predicate functions
-
lookup-tables
High performance & compile-time customizable lookup tables
-
messaging
two-way messaging crate
-
grid2d
Two dimensional grid of runtime-defined, but unchangable size
-
rust_redux
A Redux-like state management library for Rust
-
seq-set
A Set collection that maintains insertion order
-
extract_map
A HashMap for memory efficent storage of value types which contain their own keys
-
touch-selection
Selection data structure intended for touch and single button devices
-
literally
Macro literals for members of std::collections
-
packed_ptr
A configurable & generic tagged pointer implementation in Rust
-
enumoid
Enum Indexed Containers
-
syntastica-queries
Collection of tree-sitter queries for syntastica
-
indexmap-nostd
A no_std compatible implementation of the indexmap crate
-
arbitrary-chunks
An iterator that allows specifying an input array of arbitrary chunk-sizes with which to split a vector or array
-
indexland
Rust Collections with Newtype Indices
-
abin
working with binaries and strings. The library tries to avoid heap-allocations / memory-copy whenever possible by automatically choosing a reasonable strategy: stack for small binaries;…
-
granite
Generic backing storage framework for building data structures
-
inplace-vec-builder
Build a vec from a vec, in place
-
sweetrpg-model-core
Core model definitions for SweetRPG
-
sliding_extrema
Queue data structure with support for an O(1) extrema function over contents (for example, to obtain min and max over a sliding window of samples)
-
indexmap-rmw
hash table with consistent order and fast iteration. The indexmap is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys. It has the usual…
-
range_map_vec
range map data structure backed by a Vec
-
large_int
An ease-of-use unbounded signed integer
-
btree-ondisk
BTree structure on persistent storage in userspace
-
imf
processing .imf files
-
sparse_set_container
A container based on sparse set. Stable keys, O(1) lookup, cache-friendly iterations, and no hashing.
-
cbsk_timer
rayon thread runtime
-
range_minimum_query
Range Minimum Query (RMQ) is used on arrays to find the position of an element with the minimum value between two specified indices
-
shortlist
An efficient data structure to track the largest items pushed to it
-
beat_saber_map
Read and write Beat Saber maps with Rust
-
merkle
tree implementation with support for generation of inclusion proofs
-
array_list
A dynamic container that combines the characteristics of a Vec and a LinkedList
-
pulz-arena
A generational arena allocator with compact generational indices
-
no_std_collections
Auxiliary structures and traits for using dynamically resizable arrays (Vectors) in flexible environments, supporting both std and no_std contexts
-
mumu-flow
Stream tranform tools plugin for the Lava language
-
trie-hard
Fast implementation of trie data structure
-
luka
working with graphs
-
typed_index_collection
Manage collection of objects
-
small-world-rs
The easiest HNSW vector index you'll ever use
-
arboriter
A tree traversal primitive for Rust, inspired by Tyler Glaiel's blog post
-
ostr
Owned str
-
klingt
audio graph library?
-
exhaustigen
exhaustive test generator
-
irange
A data structure to store and manipulate ranges of integers with set operations
-
dawg
Directed Acyclic Word Graph
-
muds
Minimalistic Data Structures and Entity-Component-System Library
-
treez
A collection of useful data structures
-
astack
offers a Stack data structure with fixed capacity capable of fast LIFO operations
-
sparse-bitfield
Bitfield that allocates a series of small buffers
-
fwdlist
A simply linked (forward) list
-
pfx
A prefix tree (map and set), implemented without any unsafe
-
forrustts
Tools for forward simulation with tree sequence recording
-
light-curve-interpol
Interpolations tools for time series
-
grafite
Range Filter
-
range_union_find
A union-find data structure for ranges
-
anylist
a list type for any type
-
lumberjack
Read and modify constituency trees
-
magnetise
asses the similarity between SQL queries
-
debounce
Data structures and helpers for debouncing a stream of events: removing duplicate events occurring closely in time
-
orx-imp-vec
ImpVec
stands for immutable push vector 👿, it is a data structure which allows appending elements with a shared reference -
v9
A slim data engine for Data Oriented Design
-
atree
An arena based tree structure with removal support
-
bayesic
A string matching library similar to NaiveBayes but optimized for many small classifications
-
flammkuchen
Some data structures for fun and flammkuchen (e.g. a 2d grid which permits negative indices)
-
merkle-tree-stream
A stream that generates a merkle tree based on the incoming data
-
attr
attr
is a library to provide external access to a datastructure through a typed path object, using all type information known about the data structure at hand -
simple-triplestore
graph database for storing triples with support for custom node and edge properties
-
collections-futures
working with futures through collections types
-
ecstatic
Statically-typed ECS library
-
gufo-tiff
Data structure for TIFF images
-
rive-models
Revolt API models for the Rive ecosystem
-
fallback
A helper library to implement fallback mechaism
-
sorted_vector_map
maps and sets backed by sorted vectors
-
bitset-core
Straightforward, no-std compatible, simd optimized, BitSet API
-
rcbytes
Rc version bytes crate
-
periodic-rs
Bounded datastructures
-
overtone
An API for creation and management of rich (as in rich-text) musical-ish projects
-
sets_multisets
API for working with sets and multisets of elements of type usize
-
sparse_set
sparse set data structure
-
predicates-tree
Render boolean-valued predicate functions results as a tree
-
whirlybird
generic type implementations for RedMaple library, that offers workflows for different events compatible with common contents like todos, blogs and etc
-
exprz
An Expression Library
-
dequemap
A no_std compatible implementation of the dequemap crate
-
nereon
Riboseinc configuration library for Rust
-
groupex
Syncronization primitive that allows acquire lock by index
-
no-order
A transparent wrapper to ignore ordering and hashing of any value
-
fixed-vec-deque
A fixed-size, zero-allocation circular buffer for Rust
-
wildland-catlib
Wildland Catalog Library client
-
boomerang_tinymap
A tiny, fast, and simple Slotkey-type map implementation for Boomerang
-
ordered_hash_map
HashMap which preserves insertion order
-
cphf
Compile-time perfect hash function data structures
-
dyn-slice
&dyn [Trait] implementation, inspired by a Reddit thread
-
cervine
A slightly more flexible Cow; roughly to T: Borrow<R> as alloc::borrow::Cow is to B: ToOwned
-
panoradix
A generic map and a set, both backed by a Radix tree
-
d4-cryptominisat-sys
wrapper around CryptoMiniSat for d4
-
rc-writer
A tiny implement for writing data to a reference counted instance
-
fastgraph
Graph abstraction providing a generic interface and powerful parallelized traversals
-
modern-multiset
A hash multiset implementation
-
nibble_vec
Vector data-structure for half-byte values
-
rdf-borsh
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
the-zipper
zipper is a data structure that allows you to traverse and modify a tree-like structure efficiently. It provides a way to navigate through the tree while keeping track of the context…
-
holyhashmap
A hash map with stable indices
-
optempty
Tools for working types that may be empty. E.g., an empty
String
,Vec
,HashMap
, etc. -
csc411_rpegio
A collection functions to handle rpeg data i/o. Intended for use in URI's CSC 411 class.
-
nested
A memory efficient container for nested collections (like
Vec<String>
orVec<Vec<T>>
) -
bucket_vec
A vector-like data structure that guarantees to never move its contained elements
-
fix_float
Fixed floating types that allows useful trait implementations and datastructures on float numbers
-
copse
Direct ports of the standard library’s BTreeMap, BTreeSet and BinaryHeap collections, but that sort according to a specified total order rather than the
Ord
trait -
ord-collections
offering collections which are pre-sorted automatically
-
insrcdata
Embed static data as source code
-
landfill
Various types for dealing with on-disk data
-
expiringdict
A dict / HashMap whose items expire over time
-
graphix_algs
Algorithm extensions for graphix: connected-components, contraction, and MST routines
-
union-fn
Proc. macro for creating efficient "inline closures".
-
bitvector
in Rust
-
boxing
cross-platform implementations for NaN and ptr boxes
-
taganak-core
RDF types and interfaces from Taganak (Transactional, Aggregating Graph Architecture for Networking and Access to Knowledge)
-
a-tree
A dynamic data structure for efficiently indexing arbitrary boolean expressions
-
yyid
Yyid generator (random tokens like UUIDv4, but using all the bits)
-
singletonThread
thread in a singleton
-
croaring-sys
Raw bindings to CRoaring
-
hashbrown_tstd
port of Google's SwissTable hash map
-
guava-table
Efficient Table data structure similar to Guava Table from Java world
-
board-game-traits
Traits for abstract game position representations
-
partial-array
potentially partially-filled arrays
-
json-node
A way to work with JSON as a node tree
-
term_rewriting
representing, parsing, and computing with first-order term rewriting systems
-
slablit
Literal for slab creation
-
msg-store
A fast and light-weight message store designed to work as a priority queue in low hardware equiped devices
-
enum_meta
Add metadata to Enum Variants
-
typed_index
A strongly typed Index that know what it is indexing
-
clnooms
Assembly-level implementation of interesting data types
-
arbutus
Trees
-
colony
A fast associative data-structure that chooses its own keys
-
swap-queue
A lock-free thread-owned queue whereby tasks are taken by stealers in entirety via buffer swapping
-
compare
Experimental comparators for collections to be generic over
-
im-rc
Immutable collection datatypes (the fast but not thread safe version)
-
heapq
Priority Queue with scoring function
-
advanced_collections
advanced data structures (collections). Includes counter (hash-bag, multiset), disjoint set (union-find, merge-find), circular buffer (cyclic buffer) and interval (range)
-
task-collection
Types for managing and waiting on groups of tasks
-
ceres-solver-src
Rust distribution of Ceres Solver built as a minimal static library
-
wccg-models
WCCG Data
-
densemap
A collection data structure that is permanently accessible by unique keys and fast iterable
-
dsa_sport
revision material for undergrads
-
simple-file-manifest
Interact with lists of files through a storage-agnostic interface
-
exact-covers
Knuth's algorithm for solving the exact cover problem with colors
-
bfield
B-field datastructure implementation in Rust
-
calcit_fingertrees
(Calcit fork of )Immutable persisten
fingertrees
-
sequencer
Dependency graph processing libarary
-
gridbugs
Collection of re-exported crates for building roguelike games
-
workit
single-threaded work queueing utility
-
tf_playlist
The playlist feature used in Tubefeeder
-
traversal
Generic and lazy tree traversal algorithms
-
dependency-graph
building and resolving dependency graphs
-
rpos
Cursor Manager on Table
-
chunky-vec
A pin safe, append only vector never moves the backing store for an element
-
froggy
prototype for the Component Graph System programming model. It aims to combine the convenience of composition-style Object-Oriented Programming with the performance close to Entity-Component Systems
-
min-heap
A Min Priority Queue implemented as a Thin Wrapper around BinaryHeap from the Standard Library
-
bstree-file-readonly
Query read-only binary-search tree file, supporting billions of entries in files of tens of GB
-
fns
add common fn, eg: debounce, throttle
-
statemachine-rs
A statemachine crate which have zero dependencies
-
extended-rational
implementations of high-accuracy projectively-extended rational numbers and macros for creating them
-
medea-reactive
Reactive mutable data containers
-
ufotofu_codec_endian
Endian-aware fixed-width integer codecs for ufotofu_codec
-
collectable
Fallible, no_std-friendly collection traits
-
luthor
A collection of lexers for various languages/formats, and the tools required to build them
-
chainmap
mutability of intermediate maps
-
uberbyte
Bit manipulation for dummies
-
giftbox
A fun Rust crate called
giftbox
to help Rustlings learn and explore generics -
awid
Small, simple, universally unique identifiers
-
block-array-cow
In memory array de-duplication, useful for efficient storing of a history of data versions
-
kurobako_problems
A collection of black-box optimization problems
-
btree_monstrousity
a code port of BTreeMap but with comparator functions
-
tilecoding
Dr. Richard S. Sutton's tile coding software.
-
hashmap-entry-ownable
Variation of HashMap::entry() that accepts borrowed forms of keys
-
isx
Traits for checking certain conditions of values
-
graphrepresentations
providing efficient abstract implementations of different graph representations
-
stride
A strided slice type
-
win-variant
that aims to provide a more ergonomic way of working with variants in winapi based projects
-
gamma
Graph primitives and traversals for Rust
-
msiz_rustc-ap-rustc_data_structures
Automatically published version of the package
rustc_data_structures
in the rust-lang/rust repository from commit 74d5c70b174f06843049af2d764ff57ddc81c81c The publishing script for this crate lives at: https://github… -
fenwick
tree: data structure that efficiently calculates prefix sums in a changing array of numbers
-
ldtk_map
reading ldtk maps for usage in games
-
index-set
bitset implementation with support for atomic operations
-
timer_list
A list of timed events that will be triggered sequentially when the timer expires
-
cmus-status
structure cmus status data
-
polystore
Polymorphic data store
-
quotient-filter
A quotient filter implementation
-
handlemap
A collection that produces handles that can be used as keys to retrieve the stored items
-
cycler
A simultainious write/read data structure
-
pq-tree
consecutive ones property (C1P) and graph planarity testing
-
lobby-queue
Const-size queue-like data structure
-
query-flow
A macro-free, data-oriented, general-purpose library for incremental, on-demand, self-adjusting computation using query-based dataflow
-
acme-types
Types for implementing ACME (RFC 8555) providers and clients
-
ctm
Common Electric Power Transmission System Model
-
tree_by_path
A tree data structure featuring nodes addressable using a &Vec<usize> path and avoiding recursion and run-time borrow checking
-
tinymap
A map structure that stores its data on the stack
-
kvv-efa-api
Rust bindings for the KVV (Karlsruher Verkehrs Verbund) "EFA"-API
-
modupipe
A modular and extensible ETL-like pipeline builder
-
boolvec
A vector of boolean stored contiguously in memory
-
persian-rug
Framework for bringing together disparate objects with inconvenient relationships
-
nerdondon-hopscotch
A skip list
-
generational-indextree
Arena based tree structure by using indices instead of reference counted pointers
-
xskiplist
Skiplist implementation in rust, providing fast insertion and removal. A normal skiplist is implemented, as well as an ordered skiplist and a skipmap.
-
ord-by-set
providing a weakly ordered multi-set with compile-time configurable ordering scheme
-
chronoflake
Generate unique IDs based on the Snowflake algorithm
-
sparse-bin-mat
A sparse implementation of a binary matrix optimized for row operations
-
hedge
An index based half-edge mesh implementation
-
designal
Procedural macro for use with futures-signals
-
sweeper
A foundation for Minesweeper implementations in Rust
-
passive
A trio of marker traits to classify passive data structures
-
altium
processing Altium file types
-
simple-bst
A bst implementation
-
contiguous_collections
collections backed by flat contiguous arrays
-
ipasir
Bindings for the IPASIR API to communicate with incremental SAT solvers
-
uintx
Unaligned unsigned integers with exact size in memory and arithmetic operations for them
-
lurk-elsa
Append-only collections for Rust where borrows to entries can outlive insertions
-
pbloom
A portable bloom filter implementation in Rust
-
triskell
A tri-partite ring buffer
-
slice-rbtree
A slice-based Red-black tree
-
async-func
providing macros to simplify the creation of asynchronous closures with external state captured by move. Useful for structuring asynchronous code with ease and clarity.
-
ritelinked
HashMap-like containers that hold their key-value pairs in a user controllable order
-
medianheap
A median heap for keeping track of a running median
-
lace_codebook
Contains the Lace codebook specification as well as utilities for generating defaults
-
make-message-bus
Generate a pub-sub bus for use in async applications
-
data_tree
Hierarchical data tree with pathing and search support
-
actions
Software without side-effects. Redo and Undo. Macro's.
-
subset-map
A map where the keys are subsets of an initial set of elements
-
packed-colony
Cache-friendly packed associative data structure
-
fxd
Fixed-point decimal implementation
-
dynsequence
Sequence-Like data-structure for storing dynamically sized types
-
anti-r
A spatial data structure outperforming r-trees for low numbers of elements
-
patricia_router
Radix Tree implementation for Rust
-
fdec
A collection of macros for generating fixed-size fixed-point numeric types for Rust
-
arraylist
wrapper built on top of rust vector implementation. Taste like Java Arraylist, and intuitive to use like Python list and JavaScript array.
-
clap_flags
Collection of reusable flags for Clap
-
multi-stash
Vector-based arena data structure that reuses vacant slots
-
sequence_trie
Trie-like data-structure for storing sequences of values
-
rahashmap
Fork of standard library HashMap with additional functionality
-
makods
The Jostle Tree, a data structure for working with long sequences of variable-width items
-
tinyid
A tiny ID type that's like UUID except shorter and easier for a user to type in
-
mashmap
A flat HashMap that supports multiple entries per key
-
optionee
The macro to create option struct easily
-
sum-queue
Queue struct that keeps a fixed number of items by time, not capacity, and allows to get summarized stats of its content
-
dagre_rust
Dagre implementation in Rust
-
sequencetree
a new type of collection to store keys and their corresponding values
-
bitint
Integer types that have a logical size measured in bits
-
ent-rs
Entropy and randomness analysis tool for binary files (Rust port of ent.hpp)
-
fusebox
Mostly safe and sound append-only collection of trait objects
-
rds-tensors
Rust Data Science Tensors crate
-
beehive
collections for 3D hexagonal maps
-
kd-tree-rs
k-d tree
-
get-full-year
An unofficial Rust client for getfullyear.com that helps you get the full year
-
multiset
Multisets/bags
-
torro
A correct and easy-to-use BitTorrent library
-
goodreads
deserializing a Goodreads library export
-
lookupvec
Container with Vec-like properties that also offers O(1) lookup of items based on an id field
-
redox_simple_endian
A create for defining endianness within your data structures, to make handling portable data structures simpler
-
bin-it
efficient Rust library for binary serialization and deserialization
-
simple-rate-limit
Rate limit enforcement as simple data structures, no atomics
-
lazy-cow
Copy-on-write pointers with lazy modification support to minimise clones with a cost counter to limit work duplication
-
graus-db
A high-performance, thread-safe key-value embedded data store
-
evicting_cache_map
An Evicting LRU cache supporting prune hooks
-
afrim-memory
handle of sequential codes easier for an input method
-
soak
Transform a struct into arrays of its fields
-
keylist
Elixir keyword list in Rust
-
voml-collection
Collections for VOML
-
median-accumulator
fast, space-efficient, generic accumulator for computing median
-
simple-undo
Easy to use undo-redo library
-
benchmark-counters
Light-weight data structures to help with monitoring and benchmarking
-
collect-rs
Special and custom Collections and Containers (for Rust)
-
diskmap
disk based HashMap-like for shared concurrent memory usage
-
histogram-sampler
Sampling from a distribution given by a histogram
-
unicase_collections
Collection of UniCase datastructures
-
nslice
Structures for interpreting slices of variable length as arrays
-
timekeep-rs
efficient and reliable timekeeping functionalities, providing data structures and methods for creating, manipulating, and performing set operations on intervals
-
gvec
Very simple implementation of generational indexing for vectors written in Rust
-
mofurun
Multi variant Optimized Fun U....okay Mofu is just a cute name okay. Experimental implementation of Vec that stores the state of the underlying array through its enum.
-
cast-rs
A collection of types cast for Rust
-
msgpack_simple
Simplified, easy to use, pure Rust MessagePack implementation focused on handling dynamic data structures
-
RustyDSA
A libary for Rust data structure
-
default-vec2
Vec
-like data structure with default elements and a bitset built using it -
multimap
A multimap implementation
-
rust-ds
Custom data structures crate for Rust
-
runtime-sized-array
A variable-length array, also called runtime-sized
-
roaring_bitmap
Roaring bitmap data structure implemented in Rust
-
array-const-fn-init
Initializes an array with constant values calculated by a
const fn
-
bengbenge
inifity array for round-robin dns, beng, beng
-
segmap
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. Originated as a fork of Jeff Parsons' "rangemap"
-
rolling_norm
Computes the rolling mean, variance, standard derivation and norm
-
partial
Optional monad with fake variant
-
mtgjson
Unofficially provided lightweight models of the data provided by MTGJSON
-
iced_palace_macros
A royal collection of exquisite macros to rule your iced kingdom
-
isomorphism
2 directional hashmaps
-
pointcloud
An accessor layer for goko
-
device_tree
Reads and parses Linux device tree images
-
wired
WIP: Collection of embeddable database models for Rust
-
embassy-mock
An unofficial collection of mocked types for the Embassy framework
-
crio
An easy to use persistent data storage library
-
implhm
Simplified library of collision-handling HashMaps
-
tbytes
A tiny library for reading and writing typed data into buffers
-
hydroperx-sem
Semantic entities for Rust
-
mesura
A lightweight library for metrics gathering, Prometheus compatible
-
libpna
PNA(Portable-Network-Archive) decoding and encoding library
-
ware
middleware chains
-
many-to-many
creating many-to-many data structures with the ability to query either side, useful for applications such as pubsub. Like a fusion between
bimap
andmultimap
. -
small-map
An inline SIMD accelerated hashmap designed for small amount of data
-
triangle_matrix
Triangle matrix indexing operations
-
libarena
Arena allocated graph implementation
-
prometheus-tokio
A collection of tokio runtime metrics for prometheus consumption
-
fixed-index-vec
A vector-like data structure whose indices do not change when elements are removed
-
sif-itree
immutable, flat interval tree
-
yuuang_petgraph
Graph data structure library. Provides graph types and graph algorithms.
-
stac-cli
Command line interface for stac-rs
-
applejack
Radix tree
-
rbac
rbca core lib
-
leetcode-solutions
A collection of leetcode solution in rust
-
ospf-rust-multiarray
A multi-array utils for ospf-rust
-
tree-iter
iterating over tree structures
-
cbor-tag-index
Tag index
-
collect_result
collecting an iterator of results into a result of a collection
-
siraph
A node-based digital signal processing crate
-
ati
Introduces the
At
trait, which allows collections to be indexed byu|i{8,16,32,64,128}
andisize
. Supports Python-like negative index, where -1 is last element. -
decoded-char
wrapper to keep track of the original byte length of a decoded character in the encoded source file
-
mkargs
Build command arguments
-
eureka-mmanager-core
The core package for the eureka-mmanager crate
-
cycle_map
Implementations of bi-directionally accessible hashmaps
-
syntastic
Generic abstract syntax representation
-
rubbl_visdata
Preliminary work on generic data structures for radio interferometric visibility data
-
ordered_hashmap
Ordered Hashmap implementation to overcome arbitrary order of key-values problem in Rust
-
kodiak-taxonomy
manage generic taxonomies supporting unique features
-
hv-alchemy
Heavy Alchemy - the black arts of transmutation, wrapped for your safe usage and enjoyment
-
atom_table
Assign easy-to-handle typed IDs to large, hard to handle things like strings
-
shogiutil
A collection of tools to handle shogi data
-
twodarray
A 2D array library
-
quickphf_codegen
Code generator for creating static maps and sets for use with quickphf
-
tiny-bit-flags
Generate bit-flags struct and methods
-
bndpresbufq
Bounds-preserving, optionally limited, buffer queue
-
casbin-arangors-adapter
ArangoRs adapter for casbin-rs
-
nopetgraph
Graph data structure library. Provides graph types and graph algorithms.
-
discord-indexmap
A fork of the popular
indexmap
library that adds a few extra APIs that are yet to be upstreamed -
simple-ref-fn
function wrappers that do not require virtual tables
-
neighborhood-diversity
computing the neighborhood diversity of simple, undirected graphs
-
petitset
An ordered set data structure, optimized for stack-allocated storage of a tiny number of elements with a fixed cap
-
codemap2
maintained fork of the codemap crate that contains 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…
-
regex-collection
常用正则表达式合集
-
string_manipulation_utf8
String manipulation functions using character indexing (UTF-8) instead of bytes
-
lockfree-cuckoohash
lockfree cuckoo hashmap
-
grove
A segment tree library enabling generic user-defined queries and actions on segments of your data
-
broomdog
A type-erased map with 'indefinite loanership'
-
flange-flat-tree
A tree that can be expanded by attaching new values to the node without mutability of the old ones
-
simple_tables
An easy to use rust crate for creating table structures. Including macros for easily creating these table structures.
-
caffeine
Collection of data structures I'm writing for fun. Originally written for use with my crafting interpeters tutorial implementation.
-
stackvector
StackVec: vector-like facade for stack-allocated arrays
-
read-copy-update
locking primitive
-
artful
Low-memory overhead and high-performance adaptive radix tree
-
equivalence
Trait and derive macro for comparing and hashing types modulo an equivalence relation
-
rust_fixed_width
that allows for easier manipulation of fixed width files allowing for the ability to name fields and such using specs
-
ztimer
A block-based, non-circular double-linked list implementation for Rust
-
hgg
Approximate nearest neighbor search collection
-
ov
a collection of traits that allow you to chain off of anything
-
bucket_queue
A Bucket Queue data structure that can be used as a Priority Queue
-
hdf5-hl
High level bindings to HDF5 High Level API
-
offset
Glorified offsets for arbitrary structures
-
adts
Common abstract data type traits and implementations
-
indexedlinkedhashmap
An indexable LinkedHashMap. The user defines the data structure that controls order.
-
mergle
A data structure with fast merging and comparison
-
cmp_wrap
Let you compare structes by context
-
discrimination-tree
discrimination tree term indexing
-
serde_map
Map
based onVec
for serialization purposes -
temporary-annex
Helper for creating temporary annex on a collection
-
quadboard
Typed fixed-length buffers of chess pieces
-
double-map
A HashMap with double key to single data/value
-
changed
change detection
-
twovec
A data structure for storing 2 types of data in a packed, heap allocated array
-
dayendar
advanced days calendar operations
-
histree
A framework for disk-based historical indices
-
len-trait
Len trait for collectons
-
priority_container
Datastructure to find n biggest/smallest items within a large set
-
validiter
Iterator adapters for validating iterations
-
kushi
A queue built for the Dango Music Player and Oden Music Bot
-
liblet
learning about formal languages and grammars
-
dyn_trie
Dynamic trie is trie capable of mapping any T to any char iterator
-
markov-generator
Highly customizable library for building Markov chains and generating random data
-
nary_tree
A vec-backed tree structure with tree-specific generational indexes
-
aximate
core data structures and utilities
-
inditech
A set of technical indicators for time series analysis
-
nanoset-py
A memory-optimized wrapper for Python sets likely to be empty
-
libpaprika
read and generate Paprika recipe files and recipe collections
-
ds-ext
Extensions to standard Rust data structures which provide additional capabilities
-
nook
Useful types with niches
-
thinset
A data structure for sparse sets of unsigned integers that sacrifices space for speed
-
indexlist1
A doubly linked list, backed by a vector
-
hamt
Purely functional hash array mapped tries
-
traitgraph
Abstracting over different graph representations
-
construe
Compile-Time Growable Array: Vec & String for const!
-
viral32111-xml
XML parser crate for my Rust projects
-
spaceindex
-
fast_set
A set of usize with O(1) creation, add, remove, contains, and clear functions
-
quantity
Representation of quantites, i.e. of unit valued scalars and arrays.
-
colours
Color types for different color models with conversions between it
-
tobz1000-petgraph
Pseudo-namespaced fork of
petgraph
: Graph data structure library. Provides graph types and graph algorithms. -
octarr
dynamic cubic octree capable of storing class data, accessed via indexers
-
mini_uuid
A small and URL-safe UUID crate for Rust
-
bst-rs
Recursive & Iterative Binary Search Tree Implementations within Rust
-
tinystr-raw
Raw string-to-integer conversions for tinystr
-
plurals
singular/plural forms, mostly in English
-
init_trait
A small helper trait to simplify the initialisation of 'indexable' data structures
-
weight-cache
A cache that holds a limited number of key-value-pairs according to a user defined criterion
-
multipath
split file path, like
/home/{user,admin}/file.txt
-
kodiak-sets
manage generic sets supporting unique features
-
app_properties
reading application properties from a file
-
try-push
A trait for attempting potentially expensive actions
-
big-tuple
providing trait implementations for tuples of up to 128 elements
-
emap
A map with a fixed capacity and integers as keys
-
nb-tree
Very simple tree structure with generic node and branch data
-
reusable-vec
A Vec wrapper that allows reusing contained values
-
epoch-timestamp
Boilerplate collection for epoch timestamping
-
wunderkammer
Entity-Component storage for tiny games
-
weak-self
WeakSelf is simple way to have a Weak pointer to yourself
-
dynp
Dynamic property system that emphasizes the use of the Newtype pattern
-
value-trait
Traits to deal with JSONesque values
-
sidex
A format- and language-agnostic data structure and API definition language
-
quantized-density-fields
Quantized Density Fields data structure
-
rudac
common data structures and algorithms
-
dge-runtime
executing distributed computational graph
-
vecset
A vector-based sorted map, set and keyed-set implementation
-
tree-sitter-traversal
Traversal of tree-sitter Trees and any arbitrary tree with a TreeCursor-like interface
-
closures
Abstraction for seperating code and state in closures
-
setting
The styles of all graphics elements
-
fast_collections
noheap zero copy collections
-
querable
Quer(y)able data structure implementation
-
st_ring_buffer
A fixed-size String implementation using a ring buffer
-
metacomplete_ptrie
Generic trie data structure implementation (prefix tree) with support for different key and value types, and functions to search for common prefixes or postfixes
-
string-err
String error type
-
pinned_vec
Vec-like data structure whose elements never move
-
case_insensitive_hashmap
A HashMap that uses case-insensitive strings as keys
-
queueue
Queue-like data structures used in rCore
-
aatree
in Rust
-
splay_tree
Splay Tree based Data Structures (map, set, heap)
-
memcell
providing a MemoryCell struct, which stores a current and previous value
-
jsonpath-rust
basic functionality to find the set of the data according to the filtering query
-
sized-vec
Type level sized vectors
-
arr-rs
arrays library
-
strchunk
Data types for working with UTF-8 text in I/O
-
chargrid_menu
chargrid menus
-
spatialize
collection of spatial data structures used for efficent spatial partitioning
-
aterm
Annotated Terms data structure
-
alignment-exporter
Proc macro providing alignment info for a user-defined struct
-
seq_watcher
A pair of structures for monitoring a stream of data for one or more sequences
-
lovm2_std
a lightweight virtual machine with a focus on simplicity and extendability
-
nave
Thinking about the construction of distributed systems starting from the *consistent hash* algorithm
-
light_bitmap
A minimal, fixed-size bitmap library written in pure Rust
-
jemalloc-info
A small library for exporting jemalloc allocation data in Elixir
-
soa-vec
Vec-like API over a struct of arrays layout
-
restorable
An iterator adapter for saving and restoring iterator state
-
leafslug_time
Useful set of time-oriented functions, for my leafslug collection
-
expire
data structure for data maybe expired
-
kv6
Collection of structs to allow reading of Ken Silverman's voxel formats
-
sbf
Spatial Bloom Filter, a probabilistic data structure that maps elements of a space to indexed disjoint subsets of that space
-
grit-bitvec
BitVec, a vector type that can store fixed-width data with irregular bit widths
-
schema2struct
Convert a JSON schema into Rust structs for efficient and type-safe data management
-
seniorious
chtholly tree in rust
-
aflak_cake
Computational mAKE: Manage a graph of interdependent functions
-
bitf
procedural macro to easily create a bitfield out of a struct
-
motivations
a collection of motivating messages
-
milvus-sdk-rust
The official Milvus Rust SDK
-
tiny-test
tiny-test
is collection of functions simplifying test assertions in rust -
run-loop
Run loop for thread, provide message post, deadline timer and future executor
-
fusefilter
No alloc membership approximation
-
grid_trait
2D and 3D grids with combinators
-
sparseset
A Sparse Set
-
tag-vec
A vector used for storing tags
-
higher_order_point
An experimental higher order data structure for 3D points
-
type-rules
easily constrain a struct
-
lazyfunctions
A collections of functions for lazy people, or highly efficient programmers
-
sharedvec
A fast but limited collection for storing values of a single type
-
partial_const
way to handle constant and non-constant values in a unified way
-
okasaki
A collection of peristent datastructures
-
rs_filter
filter library for matching on complex data structures
-
ambient_pipeline_types
Asset pipeline types for Ambient
-
golomb-coded-set
BIP158 Golomb-Coded Set data structure
-
undo_2
Undo and redo done the right-way
-
processing_chain
set up processing chains of large amounts of data
-
elaru
Memory safe implementation of LRU cache
-
streams
A collection of stream-extensions that are missing in the
futures
crate -
epoch32
32-bit Epoch with specified starting year
-
bounded-vec-deque
A double-ended queue|ringbuffer with an upper bound on its length
-
tierkreis-core
Core implementation for the tierkreis quantum-classical hybrid workflow orchestration tool
-
dashmap-shard
port of Google's SwissTable hash map
-
multi_containers
Ergonomically work with multiple values per key
-
event-queue
crates.io için bir paket nasıl hazırlanırın ele alındığı öğrenme amaçlı modüldür
-
data-buffer
low-level data buffer type useful for IO and in homogeneous collections
-
aph
acyclic phase-type (APH) distributions
-
blazingly_fast
Blazingly fast bogosort because Rust
-
jirachi
A collision resistant runtime agnostic key-generator
-
hyperbitbit
data structure
-
circular_vec
A fixed length vector that provides a next function that loops infinitely
-
anchors
async incremental computations
-
bisetmap
fast and thread-safe two-way hash map of sets. It is best suited where you need to associate two collumns uniquely. Each key is associated to one or more other unique values. The structure…
-
scoped_stack
A scoped stack data structure
-
one_way_slot_map
SlotMap with minimal restrictions on Keys and Values
-
cad_import
importing CAD data from different formats into a uniform in-memory structure
-
crdt_tree
Tree Conflict-free Replicated Data Type (CRDT)
-
nullvec
Rust nullable vector, which can contain null(missing) values as element
-
xsparseset
sparse set
-
varflags
exporting varflags macro, allowing to use unit-like enums in conjunction with Varflags struct to create easy to use bitflags data structure defined over enum variants
-
nfe
NF-e - Manipulação da nota fiscal eletrônica
-
sector
A stateful vector implementation that provides different memory management behaviors through Rust traits and state machines
-
petal-clustering
A collection of clustering algorithms
-
core_semver
Cargo's flavor of Semantic Versioning
-
dade
data definition for Rust structures
-
system-config
storing application properties on disk
-
file_lookup
functions to search up in the file tree for a file by name
-
diskdata
A catalog of on-disk data structures
-
motivation
A collection of motivating messages
-
ternary-tree
Ternary Search Trees, with no unsafe blocks
-
rs-arboretum
A study in trees
-
p8n-types
Basic types for representing binary programs
-
pretree
package for storing and querying routing rules with prefix tree. Pretree 是一个用于存储和查询路由规则的包。它用前缀树存储路由规则,支持包含变量的路由。
-
range-mutex
A
Mutex<[T]>
-like type, that allows locking different ranges separately -
graphene
A general purpose, extensible Graph Theory data type and algorithm library for Rust
-
weak-lists
Lists with weak references and concurrent iteration and modification
-
k2_tree
A space-efficient representation of sparsely populated bit-matrices
-
inline-css
Embed CSS directly in your Rust code
-
bacon-rajan-ccc
Concurrent Cycle Collection based on the work by D.F. Bacon and V.T. Rajan
-
eqlog
Datalog with equality
-
decomp
Components of a decompilation pipeline
-
fast-list
A doubly linked list using SlotMap for improved cache locality, and to solve the ABA problem
-
skippable_map
deserialize wrapper around HashMap which skips non-conforming data
-
include-lua
that allows the embedding of a lua source tree into a Rust application binary
-
vecs_file
vecs file reader (fvecs, ivecs, bvecs)
-
arrav
Sentinel-based heapless vector
-
hkalbasi-rustc-ap-rustc_data_structures
Automatically published version of the package
rustc_data_structures
in the hkalbasi/rust repository from commit e77366b57b799dfa3ce1fcb850c068723a3213ee The publishing script for this crate lives at: https://github… -
usage
A convenient alternative to the newtype pattern
-
bufferring
Ring buffers for Rust
-
last-git-commit
wrapper arround git2-rs to get info about the last commit. Useful for when you want to show the git hash in a program.
-
foyer-intrusive-collections
Intrusive collections for Rust (linked list and red-black tree)
-
matrixgraph
A graph implementation based on dense adjacency matrices
-
prefix-tree-rs
A Trie (prefix tree) implementation
-
unthbuf
Unsigned N-bit Buffer: A structure that holds a fixed buffer of
bits
-sized unsigned integer elements -
lim-bit-vec
Limited bit vectors
-
bitgrid
A compact, efficient bit grid structure
-
raii-map
Map and set types in Rust in which the presence of the entry in the data structure is tied to the lifetime of a RAII handle returned by the insertion
-
cosmic_undo_2
Undo and redo done the right-way
-
rustupolis
tuple space data structure in Rust
-
igraph
A graph representation data structure with a built in index on keys
-
im-pathtree
Immutable, path-addressable tree data structure
-
sesstype
Multiparty Session Types
-
statiki
Static friendly data structures
-
atomic_lifo
Lock free thread-safe lifo for rust
-
compt
A complete binary tree visitor library
-
hayami
general use symbol table
-
yptoscr
writing yptoscr
-
multi_key_map
a hash table that shares one value across multiple keys
-
informalsystems-prost-build
Release based on a fork until upstream is updated
-
jagged_array
Owned
[[T]]
-like 2D array where each row can differ in length -
ascii_num
digit to ascii numbers
-
puruda
Pure Rust DataFrame
-
largeint
that supports large integer arithmetic
-
simple-collections
Collection of simple collections
-
recursive_array
arrays using recrusive data structures to avoid limitations of the rust compiler
-
protocoll
clojure inspired protocols for rust collections
-
rs-collect
This package is meant to mirror the functionality of Collections, a subsection of Illuminate\Support created by Taylor Otwell
-
dd_statechart
A Data-Driven implementation of Harel Statecharts designed for high-reliability systems
-
dogged
Persistent vector, similar to Clojure
-
amadeus-streaming
SIMD-accelerated implementations of various streaming algorithms, including Count–min sketch, Top k, HyperLogLog, Reservoir sampling
-
win-idispatch
that aims to provide a more ergonomic way of working with idispatch in winapi based projects
-
art22-05-23
Art is a collection of tools for creating and manipulating colors
-
mutable
keep track of changes in structures
-
brownstone
building fixed-size arrays
-
keyed
Implement comparison traits by specifying a key
-
sliding-window-aggregation
Sliding window aggregation
-
weak-map
BTreeMap with weak references
-
scopegraphs-prust-lib
fork of prust for scopegraphs
-
rbtset
A set based on a RB-Tree for efficient operations
-
rstructure
A thread-safe data structure library
-
base-traits
base traits (for Rust)
-
dyn_vec
A Vec<T: ?Sized>
-
wide
help you go wide
-
arrsingh
A top level crate in the workspace
-
baggie
Container for storing mixed / heterogeneous values in a common structure
-
truncate-integer
Truncate integers
-
ucd-trie
A trie for storing Unicode codepoint sets and maps
-
tree-cursor
non-intrusive tree cursor that supports node mutation without Cell/RefCell
-
xdag
DAG(Directed Acyclic Graph) lib
-
multipeek
An adapter to peek at future elements in an iterator without advancing the iterator cursor
-
d2-stampede-observers
Collection of observers for d2-stampede
-
bytes32
Used to create a custom type for 32-bit-wide byte arrays. Used for Drops of Diamond (more information about DoD is available at https://github.com/Drops-of-Diamond/Diamond-drops).
-
upair
Unordered pair data structure
-
icu-data
International Components for Unicode (ICU) data in Rust structures
-
ordered-map
A HashMap, with the capability of accessing the keys and values in order
-
rc-dlist-deque
Doubly-linked list based on std::Rc
-
strawberry_fields
Consume, read, and mutate struct fields with an iterator-like api
-
fast_forward
Quering collections blazing fast
-
libflow
grouping network flow data
-
open-payments-iso20022-remt
Open Payments - Message Parsing Library - ISO20022 REMT
-
jsonmap
store values of multiple types value in one Map
-
modql-macros
Macros for modql. Not intended to be used directly.
-
flat_map
A compact map stored as a vector of key, value pairs
-
ts_lib
A collection of functions I find useful for my projects
-
numas
multidimensional array for efficient computing
-
hibit_tree
Hierarchical bitmap tree. Integer-key map that can intersect FAST.
-
staticsort
Implements a macro providing a compile-time quicksort function for arrays of any length, containing any primitive Copy type with a PartialOrd implementation
-
gvdb
glib gvdb file format
-
gfa-reader
Reading gfa format v1
-
field-ref
Field reference (like a member pointer to non-static data field in C++) for Rust
-
bubbletree
Bubble-tree
-
thincollections
Alternative implementations for vector, map and set that are faster/smaller for some use cases
-
ts-breeze
A multithreaded tree-sitter parsing library
-
gzbbinarydoc
json like object structure to organize data.supported data types are binary(Vec<u8>),string,i64,f64,null,Vec<self> and hashmap<string,self>. the document can be parsed from and to a vec<u8>.
-
handler_map
Map from types to functions that receive them
-
groan_rs
Gromacs Analysis Library for Rust
-
bcc
Idiomatic Rust bindings for BPF Compiler Collection (BCC)
-
zetacore
in-memory vector store library with Python bindings
-
arraysetcell
A fixed-capacity, vector-like array with interior mutability and no ordering guarantees
-
hopscotch
A FIFO queue for efficiently hopping and skipping between tagged items
-
array2ds
Package for handling sized 2d arrays in rust, without the usage of the keyword unsafe cuz why not
-
gridd-euclid
euclid-compatible grid data structure (forked from Frosh_VII's gridd)
-
tree_multiset
A tree-based multiset for Rust
-
veclist
contains single simple collection. It can be used to push, access and pop with
O(1)
complexity -
netdox-plugin-rs
Collection of functions that are useful when writing a netdox plugin in Rust
-
alg_ds
Algorithms & data structures
-
vivalaakam_seattle_collection
Collection provider
-
kukoo
lockfree cuckoo hashmap
-
ids
several data structures, inspired by Bagwell’s Ideal Hash Trees, with an automatic copy-on-write implementation, analogous that of Clojure, to maximize performance. It is compatible with
no_std
code… -
evento-store
A collection of libraries and tools that help you build DDD, CQRS, and event sourcing
-
basic_functions
Just a collection of functions that I might want to use in my projects
-
intpack
collection of functions for packing/unpacking unsigned integers into other unsigned integers of different sizes. For example, packing 4 u8's into a u32.
-
elephantry-extras
A collection of additional components for elephantry
-
bipbuffer
Simon Cooke's Bip-Buffer
-
sbf-blake3
Spatial Bloom Filter, a probabilistic data structure that maps elements of a space to indexed disjoint subsets of that space
-
vf-rs
A set of classes generated from the ValueFlows RDF schema
-
total-maps
Maps where every possible key has an associated value
-
bit-index
A little-endian zero-indexed bitstring representation
-
xml-schema
Structure generator from XSD source file
-
persistent_hashmap
Persistent hashmap is a library for working with memory mapped hashmaps
-
yz-bll32
backend for bloom-like filter for partitions and tags of content-addressed data
-
ensure
target state of an object
-
llist
Lisp-style singly-linked list
-
flatbuffers-owned
that enables a more flexible usage of FlatBuffers
-
another_radix_trie
Rust built radix tree library
-
usize-set
Set data structures optimized to store sparsely distributed usize values
-
rust_release_artefact
Safely extract installable files from Rust release artefacts
-
minidom
A small, simple DOM implementation on top of rxml, targeting the subset of XML useful for XMPP
-
wavelet-matrix
A wavelet matrix implementation. Supports various near-O(1) queries on large number of symbols or integers.
-
algonium
a collection of classic algorithms for programming contests
-
honeycomb-kernels
Meshing kernel implementations using combinatorial maps
-
cumulfreqtable
A Cumulative Frequency Table implemented with a Binary Indexed Tree
-
loki-logger
A loki logger for the log facade
-
arrsingh-lists
A test crate to test publishing
-
pin_array
Tiny crate providing an array with structurally projected pinning
-
ds-bst
Binary search tree implementation
-
cbsk_log_tokio
log tool, using tokio as the runtime
-
sorted-hlist
Type-level heterogeneous lists with compile-time intersection and sorting using typenum
-
gamozolabs/rangeset
Pure Rust x86_64 bootloader and kernel
-
ketsugou
merges two arrays
-
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!
-
hashmap_settings
HashMap wrapper for layered Settings
-
baz-tree-sitter-traversal
Traversal of tree-sitter Trees and any arbitrary tree with a TreeCursor-like interface
-
polars-ad-hoc
Polars
-
cuml_map
A trait representing cumulative mappings, and several implemntations of this trait
-
arrayvec-const
A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.
-
array_manipulation
Methods for manipuling arrays in a Vec-like fashion. It will (probably) get into core once const expressions get less experimental.
-
sc-scraping
functions and structures to scrape data from the Roberts Space Industries website
-
typerat
Type-level rational numbers based on
typenum
-
ploc-bvh
A Bounding Volume Hierarchy based on PLOC
-
rust-bloomfilter
bloom filter implementation in Rust programming language
-
arrow-digest
Stable hashes for Apache Arrow
-
bit-vec-omnitool
A vector of bits
-
safe-graph
Graph implementation (refactored version of GraphMap from popular crate petgraph)
-
binary_sort_tree
二叉树的new,insert,del,search等方法
-
append-only
Append only versions of std data structures
-
apint
Arbitrary precision integers library
-
guzzle
A derivable trait for consuming key value pairs into structs
-
mqfilters
Highly optimized approximate membership query filters (bloom, cuckoo, xor, quotient) with SIMD support
-
driscoll
Useful libraries created by John Driscoll - free to use
-
espalier
Very simple flattened tree structure
-
balatro_tui_widgets
UI widgets for Balatro CLI game
-
liquemap
A two-level-list key-ordered LiqueMap with fast iteration. It supports fast indexing, including range iterators. Many implementation details are delegated to std's flatten iterators.
-
typed_id
Make your IDs strongly typed!!
-
graphrox
A graph library for graph compression and fast processing of graph approximations
-
gentrix
that adds the Matrix typed using generics that is basically a wrapper around a 2D Vector
-
time_value
A collection of functions related to time value analysis
-
short-lease-map
A map collection optimized for brief internship of values
-
bit-array-rs
Bit Array
-
grdf
Generalized RDF graphs and datasets
-
treeid
rational buckets for lexically ordered collections
-
radix_trees
Various radix tree (trie) data structures
-
judy-wrap
Judy arrays FFI mid-level binding
-
sequential_gen
sequential generator
-
oxidd
A safe, concurrent, modular, and performant decision diagram framework
-
willowtree
Lazily evaluated trees
-
bin_file
Mangling of various file formats that conveys binary information (Motorola S-Record, Intel HEX, TI-TXT and binary files)
-
streamhist
streaming histogram
-
smol-graph
to-the-point Rust graph implementation
-
merkle-lite
fast, and composable binary Merkle tree and proof for Rust Crypto hash functions
-
microcrates-bytes
Types and traits for working with bytes (with no_std support by default)
-
alloc-wg
Attempt of collection several proposals of the allocators-wg
-
ro
stuff read-only
-
iostream
the project is rust io stream.you can easily use it to manipulate files stream and memory stream
-
dge-gen
building a computational graph to be executed distributely
-
cow
A Copy-On-Write Triemap
-
binary-greedy-meshing
A port of https://github.com/cgerikj/binary-greedy-meshing to Rust
-
rotbl
Read Only Table
-
gridlife
generate and simulate Conways Game of Life cellular automatons
-
rust_twostack
Support for two-dimentional stacks for the Rust programming language
-
swimmer
Thread-safe object pool type
-
serde_single_or_vec2
Type which can be deserialized from either a sequence or a single value
-
binartree
Binary Tree realisation
-
rt-lists
Link lib
-
sampling-tree
sampling tree implementation for sampling discrete distributions with sparse dynamic updates. This allows us to sample efficiently from a distribution given the relative importance of each datapoint…
-
fixed-queue
no_std, no_alloc, use [T; N]. support
Vec
/VecDeque
/History
-
smallbytes
= SmallVec + impl BufMut (from the bytes crate)
-
libafl_wide
help you go wide, but for libafl
-
vec-entries
Entry API for iterating over and removing elements from a
Vec
-
aligned-utils
Common utilities to work with aligned values and allocation
-
standards
A collection of standards for international trade facilitation
-
vec-x
structure
VecX
to manage fixed-length arrays, supporting numeric operations and assignment operations betweenVecX
and scalar values -
tiny-solver
Factor graph solver
-
open-coroutine-timer
The time utils
-
ioc
An Inversion-of-Control library in Rust
-
containers-rs
'Collections' interfaces for describing objects that contain other objects
-
string_stupidify
Collection of helper functions to format strings in unusual ways
-
pasture-derive
Macro implementations for #[derive(PointType)]
-
hardly-trie
efficient trie data structure implementation
-
any_of
A general optional sum of product type which can be Neither, Left, Right or Both
-
mumu-math
Math functions plugin for the Mumu / Lava language
-
rustupolis_server
using space tuples in fog computing
-
destiny-pkg
Destiny 1/2 Tiger package library and tools (unpacker, verification)
-
vector-commit
A collection of traits to use with vector commitment schemes, and a few implementations of VC
-
chain-map
A chain of maps with a single view into the aggregated values
-
access
that helps creating diverse accessors
-
indextreemap
A BTreeMap implementation that allows for key and or positional insertion and retreival
-
immer-rs
A wrapper around the C++ library immer for persistent datastructures
-
range-split
splitting sequences with range parameters
-
arq
manage Arq Backup data formats
-
crdt
Conflict-free Replicated Data Types for Rust
-
type-info
Meta type information and type reflection at compile-time and runtime
-
nonogram
generation and solution package
-
pile
append only collection to manage lifetimes
-
datazoo
Bitset and jagged array data structures
-
delete_if_not
unsafely in-place delete function
-
valet
Stores your objects and gives you a tag to retrieve them later
-
scratchbuffer
A Vec<u8> like data-structure, that can be used as slices of different types
-
dendron
Generic tree data structure
-
flat-zip
An iterator adaptor to help traverse two-level collections
-
front-vec
Efficiently-prependable Vec and String types
-
foxy_types
Types for
foxy
-
packed_array
Packed Array aka sparse set structure with compile-time known size
-
kdt
k-dimensional tree implemented with const generics
-
chesspos
Basic structs for representing chess squares
-
another-option
option data type; useful when allocations are expensive
-
nimble-steps
Nimble Steps Collections
-
chtholly_tree
Rust bindings for Chtholly Tree
-
prefix_array
A generic container for searching on prefixes of keys
-
jui_file
file tool
-
trying
Basic trie crate
-
stupid-add
If you want to add stuff this lib is the way to go
-
circularbuf
Rust fixed size circular (ring) buffer
-
checked
Implements a wrapper over the primitive Rust types that better indicates overflow during arithmetic
-
mycelium-bitfield
Structured bitfields, courtesy of Mycelium
-
cliquers
Manage filesequences with a common numeric component
-
uguid
GUID (Globally Unique Identifier) no_std library
-
daft
Structural diffs of Rust data structures
-
rdf-reader
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
slotgraph
Graph implementation built with slotmap and petgraph
-
shared-string
Split a string without another allocation
-
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
-
digger
A trait for extracting data from recursive data structures
-
dynamic-matrix
work with matrices
-
kproc-values
Knowledge Processing library
-
portdiff
Data structure for fast local graph rewriting
-
pyrpds
Python Wrapper for Rust Persistent Data Structures
-
vec-dimension-shift
N-Dimension shift features for Vec<T>
-
bellande_format
Bellande File Format
-
leafslug_effects
Useful set of effectful commands, for my leafslug collection
-
bitvec-rs
Bit vector with guaranteed
[u8]
representation and the ability to get safe immutable and mutable views into its internal vector for easy I/O -
splay
native implementation of a Splay Tree for Rust. Splay Trees are self-balancing binary search trees which adapt dynamically to lookups over time to allow common access patterns to frequently have better than log(n)…
-
precedence-net
Create and analyse precedence networks
-
hkalbasi-rustc-ap-rustc_graphviz
Automatically published version of the package
rustc_graphviz
in the hkalbasi/rust repository from commit e77366b57b799dfa3ce1fcb850c068723a3213ee The publishing script for this crate lives at: https://github… -
as_bool
Define how a type should be represented in a boolean context
-
median-heap
A median heap implementation in Rust, used to keep track of a running median of a sequence of numbers
-
outils
Graph and tree data structure library. Providing utilities which aren't easily available in Rust.
-
thin-string
A String with a smaller stack footprint
-
gvc-sys
graphviz rust bindings
-
binary_search_tree
Binary search tree implementation
-
compressed-sparse-fiber
Compressed sparse fiber implementation for Rust
-
solomondb
An embedded and distributed Gremlin-compatible graph database
-
growable-bitmap
A growable (and shrinkable) compact boolean array
-
big_enum_set
creating sets of enums with a large number of variants
-
output_iter
An iterator that performs calculation during iteration
-
courgette
Colour manipulation/conversion library
-
ndhistogram
multi-dimensional histogramming for Rust
-
mikufans-proto-intl
gRPC APIs for Mikufans (Intl)
-
same_elements
Function to test if two collections contain the same values
-
mycelium_experimental
Experimental structures for mycelium. Original repositories where any thing came from originally will be listed. This is intended to be a staging area for transitions from generic to specific Mycelium impl.
-
fill_canvas
FillCanvas is a wrapper around a matrix with special methods to fill the cells
-
local_vec
fixed-capacity vector allocated on the stack
-
disjoint_set_forest
A disjoint set data structure implemented using a disjoint set forest
-
swamp-std
standard library for swamp
-
balloc
Bounded allocation datastructures
-
fixed-slice-deque
A fixed size deque implementation
-
abbrev-tree
highly inefficient data structure for text completion
-
trans-gen-python
Generating Python trans code
-
bitsvec
A bit vector with the Rust standard library's portable SIMD API
-
lesbar-text
String extensions and queries for legible text
-
tui-realm-treeview
Treeview component for tui-realm
-
dimsum
multi-dimensional array library
-
composable-indexes-props
Property testing support for composable-indexes
-
single_byte_hashmap
HashMap for storing singular bytes as keys
-
noindexmap
hash table with consistent order and fast iteration. The indexmap is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys. It has the usual…
-
tugger-file-manifest
Interact with lists of files through a storage-agnostic interface
-
datastruct
A pure-data structure builder
-
xsd
XSD.rs
-
lattice-graph
Set of Lattice(Grid) based Graph Structures
-
jsonnlp
JSON-NLP data structure
-
erased_set
A set of erased types
-
embedded-async-helpers
static
friendly helpers for async on embedded -
form_builder
building forms with various fields and validation
-
priority-expiry-cache
A cache that evicts items based on their priority and expiry time (LRU + TTL) Add (O(1)), Get (O(1)), Evict (O(1)) in both time and space
-
funnel
data structure that makes it easy to read from multiple channels from a single source
-
indexmap-amortized
hash table with consistent order and fast iteration. The indexmap is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys. It has the usual…
-
banyan
Persistent indexable tree data structure
-
charcoal
Implements tree data structures and interfaces to work with them
-
lending-library
A key-value store that loans full ownership of items
-
restor
A dynamic resource storage system in rust
-
version-lp
a version struct library for use with version comparing, and wildcard resolving
-
ibuilder
Interactive builder for Rust types
-
htmldom_read
HTML reader that parses the code into easy-use tree
-
dst
Data structures for DSTs
-
villa01-data-structures
Personal crate of me trying to implement data structures and algorithms in Rust
-
fn-map
Abstraction around HashMap. Uses closure to compute and store value.
-
anystruct
that provides traits for converting between JSON and Protocol Buffers (Proto) data structures
-
dittolive-ditto-sys
Native bindings to Ditto library
-
python-objects
that implements the architecture of the CPython objects. with this crate you can crate a list with any data type from rust
-
automerge-persistent-sled
A sled adapter for persisting Automerge documents
-
anas
Anas's Meta-data crate
-
push-while-ref
push while having a reference
-
composite_types
Compose type definitions in the style of typescript
-
bool_ext
defines and implements a complete set of
Option
/Result
-style Boolean functional combinators on Rust’sbool
primitive type -
version-rs
A struct for Versions, with the methods you expect
-
bitworks
meant to provide easy to use bitsets with emphasis on safety
-
future-fn
providing macros to simplify the creation of asynchronous closures with external state captured by move. Useful for structuring asynchronous code with ease and clarity.
-
break_array
For breaking array indexing
-
aggregate-map
Collect key-values pairs into a mapping from keys to collections of values
-
algods
A collection of data structures and algorithms
-
cdll
A circular doubly linked list
-
aoc-framework-utils
such as data types, algorithms and functions for aoc-framework-rs
-
arc-atomic
atomic pointer to an
Arc
-
hamt-rs
A Hash Array Mapped Trie implementation based on the *Ideal Hash Trees* paper by Phil Bagwell
-
fpq
Priority Queue with scoring Function
-
alist
Association list offering fast lookups while preserving insertion order
-
threshold-dict
A data structure to find smallest key that is larger than the query
-
internode
Smart references to your graph nodes
-
value_pool
implements a ValuePool struct that makes the creation of self-referential data structures easier and safer
-
rudy
Judy array implementation in pure Rust
-
zom
A collection of zero, one or many elements
-
rustgym-gvc
generate svg for some data structure in rustgym
-
smolvec
A lightweight vector implementation with small-vector optimization for rust
-
deferred_vector
A deferred vector implementation
-
char-list
A persistent string type with the same API as a linked-list of characters
-
key_set
KeySet representing concepts of All, None, Some(list), and AllExceptSome(list), with basic set calculations (intersection, difference, inverse)
-
contextual
deal with data in context
-
rustfsm
Define state machines that can accept events and produce commands
-
not_empty
Slices and vectors that are statically guaranteed to be not empty
-
enid
parse Encrypted Numeric Identifiers
-
skiplist-rs
Skip list is a kind of ordered map and can store any value inside. See skip list wikipedia page to learn more about this data structure.
-
dispatchtable
Small library used to specify function dispatch tables HashMap<K, Box<Fn(..)>>
-
vectune
A lightweight VectorDB with Incremental Indexing, based on FreshVamana
-
deepmesa-collections
A collection of data structures and algorithms designed for performance
-
tangu-lints
A collection of lints for the Tangu language
-
packbytes
Convert structures to and from packed representavises - byte arrays of fixed size that live on stack
-
byte_set
Efficient sets of bytes
-
pokeapi-model
Data structures for PokéAPI v2
-
csv2struct
Generate Rust struct definitions from CSV
-
b100m-filter
The fastest bloom filter in Rust. No accuracy compromises. Use any hasher.
-
bloom_filter_plus
rust_bloom_filter
-
eztd
Quick start Rust
-
mc-oblivious-ram
Implementations of Oblivious RAM data structures
-
hashcow
HashMap implementation with copy-on-write keys and values
-
hex-game
Hex for Rust
-
sot
Object Tree
-
varstack
A call-stack based singly-linked list
-
collectioner
collection helper
-
arc-bytes
A reference-counted byte buffer
-
uwheel
Embeddable Aggregate Management System for Streams and Queries
-
rosary
About Rose Trees
-
hyper-tree-router
Routing middleware for Hyper http library using Prefix tree (trie) for path finding
-
parse_tree
A non-abstract syntax tree type
-
priq
Array implementation of the min/max heap
-
bitaccess
Macro for efficient and type-checked access to individual bits of a variable
-
graph_symmetry
Symmetry perception for graphs and its applications on canonicalization
-
hash-chain
A tiered hashmap and hashset implementation that allows for easily representing lexically scoped variables
-
cursed-collections
Collections that (seem to) break Rust safety
-
typemap_core
A no_std typemap with trait-based value-presence guarantees (on nightly)
-
type-pools
A data structure to store values of multiple types
-
trailer
Store a type with an associated buffer in contiguous memory
-
true_crab_utils
A collection of algorithms and data structures implemented in Rust
-
acyclic-graph
Directed acyclic graph
-
riblt
Rateless Invertable Bloom Lookup Table (RIBLT) data structure
-
ropey
A fast and robust text rope for Rust
-
hashset_ext
Extension for HashSet with intuitive, chainable Python-like set operations
-
lance-arrow
Arrow Extension for Lance
-
array-ops
Automatic method implementations for array data types
-
num-bigint
Big integer implementation for Rust
-
nodegraph
A data structure in rust describing a graph of nodes, where each node may contain arbitrary data
-
deqmap
A double-ended queue with optional keys
-
recasting
traits for one-to-one recasting of values in data structures
-
progress-streams
Progress callbacks for types which implement Read/Write
-
hilbert_curve_generator
A WIP Hilbert Space-Filling Curve Coordinate Generator
-
vector2
2D vector library
-
yasm
state machine library focused on usability and visualization
-
wolf-derivation-graph
Adds support for memoizing data flow graphs to wolf-graph
-
key-node-list
Doubly-linked list that stores key-node pairs
-
object-chain
Ad-hoc structure builder
-
sdsl
interface for the Succinct Data Structure Library
-
associated_list
An associated list, for cases when the key implements neither Hash nor Ord
-
zk-kit-smt
Sparse Merkle Tree
-
chargrid_graphical_common
Common types for graphical backends
-
iodyn
An incremental collections library making use of Adapton
-
fairqueue
Spatially distancing fair queue. A kind of queue for sequential round-robin processing.
-
seg-tree
segment tree library
-
ndcopy
Fast N-dimensional array memcpy
-
lz_diet
An AVL balanced Discrete Interval Encoding Tree
-
rustica
functional programming library for the Rust language
-
corresponding
Move corresponding fields between structs
-
hexarr
working with hexagonal grids
-
snake_case
SnakeCase is a String-like type that can only contain valid non-empty snake_case
-
vecbool
bit vector built on top of Vec<u8>
-
dependy
Dependency resolution with variable dependency types
-
treap_non_random
A non-randomized Treap implementation. Not very useful as a balanced tree, but useful when implementing CVM or similar algorithms.
-
m6coll
Small Smart Collections using prefix m6
-
tapa-trait-serde
A collection of Tapalogi's reusable crates
-
ppar
Persistent immutable array
-
shelves
Storing values referenced by a unique typed index
-
no_vec
modifying sized arrays
-
div-int
Rational numbers with a compile-time denominator
-
token_deque
A double-ended queue backed by a vector that allows access to interior values
-
discrete_range_map
DiscreteRangeMap and DiscreteRangeSet, Data Structures for storing non-overlapping discrete intervals based off BTreeMap
-
json_to_struct
Convert JSON into Rust structs for efficient and type-safe data management
-
membuffer
A very fast flat memory buffer used to deserialize at a fast speed
-
openmodel
Geometry library for structures
-
bonzai
An abstraction for optimizing the memory layout and pointer aliasing of trees
-
animgraph
Animation data flow library using hierarchical state machines
-
bitmac
Structure for accessing to single bits
-
zsling
Rust Wrapper around a Sequentially lockign (SeqLock) Ring Buffer written in Zig
-
simplecountry
Country Library
-
deltastruct
Allows defining deltas for tagged structs for later application
-
tree-experiments
Experiments with tree-like data structures
-
rattler_libsolv_c
Bindings for libsolv
-
geometry
A structure for storing and look up 3D geometry
-
perm-vec
Datatype representing permutations of indices
-
eclectic
Experimental collection traits
-
pure-hfsm
A finite state machine library with a clear separation between the machine definition and its changing state
-
pax-properties-coproduct
Static container for program-variable data structures and polymorphic components
-
arenas
Arena data structure for efficiently adding & removing items with stable IDs
-
lightning-containers
A set of lock-free data structures
-
pui-vec
An append only vector, with guaranteed elided bounds checks
-
vortex
file format with all builtin codecs and a sampling compressor
-
hamst
Hash Array Mapped Shareable Trie
-
dst-container
Containers for DST objects
-
crdt_rs
work with Conflict-free replicated data types (CRDT) in Rust
-
small-ord-set
A set data-structure represented by a sorted
SmallVec
-
bittyset
A BitSet type for manipulating bit sets
-
free-algebra
Types for constructing free algebras over sets
-
cbsk_unique
unique value generator
-
dynprops
Creating and extending objects with typed dynamic properties
-
mori_parallel
parallel orientation library built around commonly used orientation representations used in crystallography and engineering applications. It contains conversion, rotation, and data…
-
bitvec_simd
bitvec with SIMD
-
prcn_lib
private library for atcoder
-
to-offset
developer-friendly methods to manipulate strings with character indices
-
plod
deriving plain old data
-
bytes-quilt
data structure for tracking random-access writes to a buffer
-
num-bigint-dig
Big integer implementation for Rust
-
fallacy-hash
fallible hash collections
-
tinybitset
Generic implementation of small, fixed size, copyable bitsets
-
binary-layout
allows type-safe, inplace, zero-copy access to structured binary data. You define a custom data layout and give it a slice of binary data, and it will allow you to read and write the…
-
arenavec
An arena backed implementation of vectors and related types
-
id-vec
Simplify Graphs in Rust. Introduces IdVec, which automatically creates Ids for each new object, reusing deleted Ids.
-
dgrambuf
A fixed capacity ring buffer for datagrams (byte slices)
-
vox_writer
writer module for MagicaVoxel file format
-
hashtree
A Merkle Tree implementation in Rust
-
union-find-rs
Disjoint-set forest implementation to support the union-find algorithm in Rust
-
tiny-sparse-merkle-tree
Sparse Merkle Tree
-
vec-2-10-10-10
A 32-bit vector, where 2 bits are dedicated for alpha, and 30 bits are dedicated for color. Compatible with GL_UNSIGNED_INT_2_10_10_10_REV vertex attribute format.
-
twie
fast and compact prefix tries
-
prototty_storage
Interface to persistent storage
-
stable_node_set
An ordered set with handles to values
-
one-stack-vec
OneStackVec could contain any number of item like
Vec
, and it does heap allocation only when it contains more than one item -
interval-map
A vector-based, non-duplicate range-keyed, sorted array
-
tb
A small toolbox
-
rpkg-rs
Parse Glacier ResourcePackage (rpkg) files, allowing access to the resources stored within
-
hashable_weak
A hashable weak pointer
-
db_meta_derive
db-meta-derive is a wrapper around PostgresSOL using tokio-postgres
-
yagraphc
working with Graph data structures and common algorithms on top of it
-
transitionable
A no_std compatible type to transition
T -> T
where you have an&mut T
-
os_error
Struct
OsError
represents only the OS error part ofstd::io::Error
.OsError
implementsClone
,Copy
,PartialEq
,PartialOrd
,Eq
,Ord
,Display
,Debug
,Hash
,TryFrom<std::io::Error>
… -
tree-collection
Name reservation – Project will feature a collection of dependency-free pure rust implementations of tree varaints, such as AVL Tree, TTree and B+ Tree
-
indexvec
Simplified copy of rustc's index crate
-
more_ranges
Range types not provided in the standard library
-
stack-array
A data structure for storing and manipulating fixed number of elements of a specific type
-
clash_rules
a clash yaml rule parser and matching algorithms provider
-
rotbuf
Queue implementation wrapped around the
Bytes
crates’ BytesMut data structure -
forsyde-io-core
Core component of the Rust ForSyDe IO supporting library
-
know
Framework for Rust
-
p-chan
Multimedia (Audio, Raster) Channel Newtypes and Conversions
-
ts-builder
Timestamp builder
-
stac-duckdb
Client for querying stac-geoparquet using DuckDB
-
paged
Read and create read-only paged database files
-
better_peekable
Create a Peekable structure like Rust's Peekable except allowing for peeking n items ahead
-
file_graph-rs
A tiny crate to generate a tree like structure starting from a folder and branching inwards
-
pg_filters
helper to generate postgres sql for pagination, sorting and filtering
-
uuid-timestamp
UUID timestamp
-
ordered-vecmap
Ordered map and set based on vectors and binary search
-
content-tree
An efficient data structure for compacted RLE data
-
free-ranges
An efficient data structure for keeping track of indices which are either free or not
-
sliced
A segmented vector for iterating over slices
-
primitive_fixed_point_decimal
Primitive fixed-point decimal types
-
om2
A set of classes generated from the OM2 RDF schema (mainly Unit)
-
google-contacts-csv
Struct defined to hold the contact information from the Google contact file
-
keybindings-parser
parsing human keyboard shortcuts
-
compa_decimal
A compact and efficient decimal system using a custom character set for representing large numbers in fewer characters
-
serde_either
set to enums to deserialize and serialize data that can either be string, struct or vec
-
radyx
A basic radix tree implementation
-
two_three
A two-three (2-3) tree implementation in Rust. Includes a map and set interface
-
louds-rs
High performance LOUDS (Level-Order Unary Degree Sequence) library
-
sbbf-rs-safe
Split block bloom filter implementation
-
hashable-map
Wrappers for HashMap and HashSet that implement Hash
-
strck
Checked owned and borrowed strings
-
mmdb_core
A std-collection-like database
-
u64_array_bigints
biginteger library based on u64 arrays
-
staticstep
truly zero-cost alternatives to
Iterator::step_by
for both incrementing and decrementing any type that satisfiesRangeBounds<T: Copy + Default + Step>
-
cartesian-tree
Construct a Cartesian Tree from a Slice in Linear Time
-
osmgraph
Convert OSM queries into graphs
-
collections-more
Common data structure and algorithms for rust-lang to complete the already excellent std::collections
-
winvec
Windowed Vector (TTL) Collection for Rust
-
smallbigint
Big integer types that have a small on-stack representation for small values. Uses num-bigint internally.
-
indexed_bitvec
An indexed bitvector with (hopefully) fast rank and select operations
-
avl-cont
A contiguous AVL Tree
-
do_util
Discrete Optimization utilitary library (data-structures)
-
array_stump
A data structure mixing dynamic array and sorted set semantics
-
iblt
Invertible bloom lookup table implementation
-
stringid
Lightweight system to manage identifier as human readable string and unique number
-
datastreams-rs
DataStreams container
-
kurve
Adjacency list graph data structure
-
variant-set
A set-like data structure for enum variants, allowing you to store at most one value for each variant of an enum
-
foliage
Abstract syntax tree for first-order logic with integer arithmetics
-
any_key
Dynamically typed keys for associative arrays
-
inspector
General purpose inspection for popular data structures
-
rive
ecosystem crate
-
distant-protocol
Protocol library for distant, providing data structures used between the client and server
-
prust-lib
Persistent & Immutable Data Structures in Rust
-
zot
Option-like enums for working with ordered collections of zero, one, or two items (
Zot
), or ordered collections of one or two items (Ot
) -
smallgraph
A small graph based on smallvec
-
bloomfx
Bloom filter implementation backed by fxhash
-
vbox
type erased Box of trait object
-
hashable_rc
Hashable wrappers for reference countings
-
zhifeng_impl_barnes_hut_tree
implements Barns-Hut Tree for accelerated N-body force calculation
-
lifetimed-bytes
Bytes, but with attached lifetime
-
secured_linked_list
A cryptographically secured and provable linked list
-
tensr
A high-performance, cross-platform, multi-backend tensor/array library for Rust
-
prefix_sum
prefix sum data structure
-
rdf_rs
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
flex-algo
Rust commonly used data structure and algorithms
-
forgetful
Track and forget values within a specific scope, enabling detection of repeated values
-
pciids
parse the pci.ids data file
-
dawgdic
Port of DAFSA in safe Rust (original implementation courtesy to Susumu Yata)
-
geomprim2d
2D geometric primitive types
-
scell
A smart container for objects in recursive data structures
-
go-heap-rs
Golang's heap written in Rust
-
trie-standardmap
Standard test map for profiling tries
-
fed
A sketch implementation of anonymous, tagged unions in stable Rust
-
nsrb
Nifty Simple Ring Buffer (aka circular buffer) is a no_std library that provides 2 macros to easily create fixed circular buffer on the stack
-
rucksack-lib
The rucksack core library
-
Project2
Implementations of red black tree and AVL tree
-
merged_range
rangeset that can merge overlap
-
spigal
fixed-length ring buffer implementation, intended to be no-frills and easy to use, especially for embedded applications
-
fricgan
performing basic input and output on bytes
-
graphlib
powerful rust library for the graph data-structure
-
batbox-approx
Approximate comparison
-
trie_of_lists
Trie library for storing and searching lists of arbitrary data structures efficiently that have substantial overlap. For example file paths
-
flat-multimap
A multimap and multiset implementation using a flattened hash table
-
erasable
Type-erased thin pointers
-
const-size-flatten
Flatten and FlatMap with constant inner iterator size
-
vec_key_value_pair
A drop-in replacement for std::HashMap and std::HashSet that use Vec on the backend
-
trait-based-collection
A trait-based collection library that implement different data structures using the same trait
-
la-arena
index-based arena without deletion
-
bloom
Fast Bloom Filter and Counting Bloom Filter implementation
-
bitrush-index
A serializable bitmap index library able to index millions values/sec on a single thread
-
truetree
Trees in Rust
-
varuint
Variable length signed and unsigned integer types
-
read-write-pipe
A trait for objects implementing Write, to write all content from a Read object
-
qt-json
JSON library for QT
-
ggmath
optimized generic-graphics-math
-
genindex
Generational index library
-
newnum
traits for number API and hierarchy
-
merkle_light
Light merkle tree implementation with SPV support and dependency agnostic
-
hexgridspiral
Hexagonal Cube-Coordinate System with Spiralling Integer Tile Identifiers
-
aoc-framework-rs
A framework for AdventOfCode coding competition, that handles input, output and provides some core utilities
-
clampf
Clamped floating-point types
-
bitmaptrie
Bitmapped vector trie (mutable, not persistent). Word-size path-cached indexing into essentially a sparse vector. Requires rust-nightly.
-
cbsk_log_rayon
log tool, using tokio as the runtime
-
dag-cbor-references
Extract blake3 ipld links from dag-cbor blocks
-
kn0sys_ndarray_rand
Constructors for randomized arrays.
rand
integration forndarray
. -
frbf
robust, and efficient implementation of the Bloom Filter data structure in Rust
-
zerovec
Zero-copy vector backed by a byte array
-
rk-utils
A collection of utility functions and data structures for rust
-
insert_multiple
insert multiple items into a stream in reasonable runtime
-
option_set
Bitflags on steroids
-
debris
the data structure
-
queue-rs
queue
-
guppy-summaries
Build summaries for Cargo, created by guppy
-
rshyper-core
implements the core functionality of rshyper, focusing on providing the essential components that compose a hypergraph
-
loro-preload
Loro internal lib for loading data
-
summ
sum of numbers
-
rawenum
A procedural macro to generate from_* methods for enums based on their integer discriminants
-
slop-rs
Official implementation of the SLOP data storage language
-
mumu-string
String functions and tools plugin for the Lava language
-
nimrodshn-btree
A persistent copy-on-write B+Tree implementation, designed as an index for a key-value store, inspired by SQLite
-
package-json
package.json manager for Rust
-
typeables
type aliases. By SixArm.com.
-
dotreds-binary-heap-plus
Enhanced version of std::collections::BinaryHeap that supports max, min, and custom-order heaps. Makes some previously internal function public
-
moretypes
Named tuples, records, and more!
-
gen_value
indexes and values with generations for vectors
-
dastral
Reduce boilerplate code, learn data structures & algorithms with Dastral
-
simple-binary-tree
binary tree view representation
-
fplist
An immutable, persistent, singly-linked list
-
nstree
construct branched 'namespace strings' for nested subcomponents, often for logging
-
simple_bitfield
Create bitfields with the same memory structure as integers using a simple macro
-
extended-collections
An extension to the collections in the standard library with various data structures
-
range_vec
Fast indexed access to a range of mostly-default values
-
trans-gen-kotlin
Generating Kotlin trans code
-
ensured_bufreader
A Bufreader ensures N bytes in buffer
-
const_array_map
A const-capable Map type backed by a static array
-
pi_async_graph
async graph
-
siebencorgie/jakar-tree
-
tiled_parse_tree
Tree data structure
-
comprende
Python-style collection comprehensions in Rust
-
iunorm
Map normalized floating-point numbers to/from (un)signed integers
-
kvtree
Heterogenous in memory key value tree storage
-
hylo-fix
Fixed-point number types with Solana Anchor support
-
zond
standard rust collections but with collecting statistics
-
rdf-format
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
valord-map
A dictionary sorted by values
-
stalin-binary-search
alike binary search but any checking element which is not target one is eliminated
-
retriever
embedded in-memory data store for rust applications
-
tensorism-gen
Multidimensional arrays with bounds included in the type system
-
persistent-map
async, persistent key-value store for Rust, backed by SQLite and designed for extensibility with other storage backends
-
append-only-vec
Append-only, concurrent vector
-
pinned-queue
Queue-like data structure whose elements can never move
-
sliding_tree
A tree that grows from the leaves and recedes from the root
-
rope_rd
A Read/Seek rope implementation
-
prost-unwrap
A procedural macro for prost-generated structs validation and type-casting
-
hdf5-hl-sys
Bindings to HDF5 High Level API
-
velect
A Vec with item / index selection
-
hecs
A fast, minimal, and ergonomic entity-component-system library
-
skog
Adobe's stlab::forest data structure
-
replicante_logging
Replicante common logging logic
-
algae-rs
A collection of abstract algebraic structures implemented in Rust
-
tree-mapper
generating a hierarchical mapping of files and directories represented as a HashMap. The mapping reflects the directory structure and file levels, allowing for efficient retrieval and…
-
light_merkle
A light-weight merkle tree implementation that allows to use any hashing algorithms from the packages sha2 and sha3
-
evento-query
A collection of libraries and tools that help you build DDD, CQRS, and event sourcing
-
modular-bitfield-ordering
Provide u8be..u128be, u8le..u128le for modular-bitfield
-
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.
-
GPS_datacollector_dagur
GPR crate that reads GPGGA data from ultimate GPS module
-
aabb-quadtree
A quadtree that maps bounding-boxes to elements
-
lhlist
Labeled heterogeneous lists
-
uniqueid
Generates a unique hash/identifier for a system given a set of parameters
-
faex
A fast and efficient Compact Data Structures Library
-
rs-bush
Bush data structure
-
rl-bandit
multi-armed bandit implementation
-
bloom_filter_plush
rust_bloom_filter
-
twilio-data
Twilio API data structures
-
segmentmap
A collection that maintains insertion order
-
frozen-collections-core
logic for frozen collections
-
lookups
Improve the data retrieval operations for collections
-
line-index
Maps flat
TextSize
offsets to/from(line, column)
representation -
rb-interval-map
rb-interval-map
is a map based on interval tree -
mrkl
Generic, minimalist, parallelizable Merkle tree
-
onevec
One-based indexed Vec wrapper
-
copy-range
core::ops::Range et al, but Copy and IntoIterator
-
terrain-graph
Graph Library for Rust
-
clone_cell
A Cell that works with a restrictive form of Clone
-
to-display
A trait that is Display or can be converted to Display
-
realhydroper-smodel
Semantic modeling for Rust
-
disjoint-set
Tarjan's Union-Find Data Structure
-
arrayvec
A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.
-
rust-fsm
A framework and a DSL for building finite state machines in Rust
-
gml_parser
A fast and simple Graph Modeling Language (GML) parser
-
bit-set-omnitool
A set of bits
-
underscore
rust. Inspired by underscore.js.
-
automatic-relations
Tree automatic relations
-
leetcode_for_rust
leetcode for rust
-
string-wrapper
A possibly-stack-allocated string with generic bytes storage
-
libreda-splay
Splay map and splay set data structures
-
elytra_derive
Macros implementation of #[derive(Node, Relation)]
-
fn-traits
function traits like the standard library ones, but can be used in stable Rust
-
sylvan-sys
Bindings for the Sylvan parallel decision diagrams library
-
qlrumap
A HashMap with an LRU feature
-
bytes
Types and traits for working with bytes
-
higher-cat
Functors, Applicatives, Monads and other bad ideas
-
vax-floating
VAX floating-point types
-
serde_single_or_vec
Type which can be deserialized from either a sequence or a single value
-
honeycomb-core
Core structure implementation for combinatorial maps
-
hex-string
a data structure for managing hex strings in both string and byte vector representation
-
serde-ndim
Serde support for n-dimensional arrays from self-describing formats
-
hdf5-dst
DST extensions for HDF5
-
lazy-cogs
Lazy Cogs is a implementation of lazy clonable data structures
-
ensf594-project-mmap
Final project for the ENSF 594 course of the University of Calgary, summer 2022
-
rustgym-testcpp
rustgym cpp solutions
-
n2k-base
Basic definitions of data structures and methods for N2K networks. See https://en.wikipedia.org/wiki/NMEA_2000.
-
tapestry
Generic 2D grid data structure and utilities
-
collection_macros
Collection of macros for collections
-
cli_tree
A CLI tool to generate a tree of user defined nodes
-
varintrs
Golang Variable-Length Integers
-
typedmap
A hash map (dash map). A type of value is defined by trait implemented on key type
-
ternary-tree-wasm
A simplified Wasm binding to ternary-tree crate
-
default-vec
A specialized vector that has a default value
-
dyn_list
A linked list that can hold dynamically sized values in its nodes
-
tcgeneric
Generic data types used internally by TinyChain
-
collidea
Collision-prone memory-efficient collections
-
bitarr
A fast and efficient Rust implementation of a BitSet, supporting multiple backing stores
-
flowerbloom
fast bloom filter implementation with thorough documentation and tests
-
flat_collections
Lightweight and memory-efficient associative data structures
-
intersection
Find the intersection over a collection of sets; when you need more than the intersection between two sets
-
rbl_circular_buffer
A zero-allocation, fast, circular buffer implementation in Rust
-
hash_table_datastruct
Adds a HashTable type, allowing to store values in a table with integer-indexed rows and hashable keys for columns
-
batbox-cmp
Traits & functions related to Ord
-
aora
Append-only random-accessed data persistence
-
chunked-bytes
A rope-like non-contiguous buffer for efficient data structure serialization and vectored output
-
kd_interval_tree
Implements a K-dimensional interval tree, for fast interval-overlap lookup. Binary-tree based implementation, i.e. O(log(n)) lookups.
-
index_graph
Graph library that only stores indexes from a base array
-
ninja-files-data
Core data structures for ninja files
-
lanyard
UTF-8 C string types
-
map1
@ErichDonGubler's fancy template for new Rust projects
-
f256
Octuple-precision floating-point arithmetic
-
stac-extensions
Manage STAC extensions (https://stac-extensions.github.io/)
-
dynvec
DynVec
type that acts like a vector to store any datatype -
slice-find
SliceFind trait add .find() method (for search sub-slice in slice) to Vec, slice, fixed-length-slice in standard library
-
jmt-blake3
Jellyfish Merkle Tree based on BLAKE3 hash function
-
vortex-array
Vortex in memory columnar data format
-
insert_many
optimization for vec-like structures
-
ipsuite
[WIP] Collection of Types for the Internet Protocol Suite
-
roopes
Object Oriented Pattern Element System. This crate provides generic traits and implementations for typical object-oriented patterns. It is intended to be used as a cluster of utility…
-
tongrams
Tons of N-grams
-
hat_trie
A hat-trie implementation that support prefix match iteration
-
precomputed-map
Precomputed a Map to embed in binary
-
binstring
Store binary data as a string
-
jsonbb
A binary representation of json value, optimized for parsing and querying
-
static_map
A static hashmap implementation, based on the Round-Robin hashing algorithm found in rustc
-
symbolmap-trait
A trait for generic implementation of symbol tables
-
dh
Data handling in Rust, made easy
-
fuid
A UUID-compatible identifier in a friendly base-62 format
-
into_enum
Rust macro to generate trivial From impls
-
rs-merkletree
create Merkle Trees
-
cset
Fine-grained and reversible struct transactions
-
lk_math
Collection of reusable mathematical tools
-
ax_banyan
Persistent indexable tree data structure
-
automap
pattern to implement key-value maps where the value type contains the key type
-
flag_set
FlagSet can process operations of the infinite complementary sets and the origin sets
-
alo
ALO means At Least One. It could contain any number of item like
Vec
but it does not heap allocation if it contains only one item -
stochastic-data-structures
Various stochastic datastructures implemented
-
dcbor-parse
dCBOR Diagnostic Parser and Composer for Rust
-
graphific
graph data structure library
-
sixarm_collections
Collections for HashMapToSet and BTreeMapToSet as trait extensions. By SixArm.com.
-
whistlinoak
Annotated even-arity trees backed by mmaps
-
s-trie-standardmap
Standard test map for profiling tries
-
gsrs
Generic Self Referencing Struct
-
weak-table
Weak hash maps and sets
-
stix
working with STIX 2.0 threat intelligence
-
ct-tilemap
help parse ClickTeam Tilemap files
-
id_sys
data structures which can be marked such that they only work with similarly marked integer data types
-
domain-lookup-tree
A tree structure in Rust optimized for looking up domain names, with wildcard support
-
u64_array_bigints_core
Core library for
u64_array_bigints
-
compressed_map
'Static functions': compressed maps with the keys removed
-
judy-sys
Low-level Judy array FFI binding
-
mmap_json_file
parse, count, filter JSON files using memory mapped io library
-
bidirectional-map
A two-way map data structure for small keys and values
-
fastdivide
partial port of libdivide. It makes it possible to reduce the cost of divisions.
-
sortedcontainers
An experimental sorted data structure
-
atlas-rb-tree
A textbook implementation of a Red-Black Tree
-
compactmap
Compact Vec-based map that choses assigns IDs for your values on it's own. Very similar to Slab.
-
collecting-hashmap
A hashmap that will store multiple values for a key
-
hashmap_macro
hashmap macro for creating hashmap from provided key/value pairs
-
bet
parsing and evaluating binary expression trees
-
timed_set
timed set in Rust to store elements for a given time period
-
nclist
finding overlapping intervals using a nested containment list
-
rust_decimal_macro_impls
Shorthand macros to assist creating Decimal types. Do not depend on this directly; use rust_decimal_macros
-
graph-api-simplegraph
efficient graph implementation for the graph-api ecosystem with support for indexing
-
tan_lint
A collection of lints for the Tan language
-
causal-length
CRDT's based on causal length sets
-
meminterval
interval-tree in Rust made to store memory mappings
-
grit-data-prison
providing the struct Prison<T>, a Generational Arena that allows full interior mutability to each and every element
-
uvector
access two slices as a single continuous vector
-
dynamic-list
A powerful and efficient implementation of dynamic lists with versatile data structures, capable of storing any type!
-
rust_list
Singly linked list in Rust, with macros for easy instantiation
-
tyght-map
A static type map implementation
-
empty-collections
Correct-by-construction empty collections
-
fixed_str
Fixed-size, null-padded UTF-8 string type with const-safe construction and binary serialization support
-
composable-indexes-core
Core library powering composable-indexes
-
nonasync
A set of utilities useful for building a non-blocking non-async APIs
-
lumberjack-utils
Read and modify constituency trees
-
segment-map
A self-balancing binary search tree for mapping discrete, disjoint segments to values
-
vmcircbuf
A circular buffer that magically wraps around without any copying
-
spatial-neighbors
certain Spatial-Partitioning Algorithms | DataStructures
-
scorpius
data structures and algorithms library
-
labelgraph
graph implementation, allowing random access to nodes via labels
-
mumu-matrix
Matrix operations for the mumu/lava language
-
ringvec
ring buffer implementation based on a vector
-
few
A generalization of
std::Option
allowing for up to two optional values -
bloomy
Bloom filter using only two hash functions
-
mvbitfield
Generates types to work with bit-aligned fields
-
learn_together
Curated collection of lists of useful resources to learn Rust together
-
ttgraph_macros
Proc-macros for TTGraph
-
bugu
Cuckoo Filter: Practically Better Than Bloom
-
tsil_cev
LinkedList on Vec
-
ctxmap
A collection that can store references of different types and lifetimes
-
priority-queue-rs
Priority Queue is more specialized data structure than Queue. Like ordinary queue, priority queue has same method but with a major difference. In Priority queue items are ordered by…
-
magiclist
List with O(log n) random access, insertion, splitting, and merging
-
orbweaver
designed for effortless construction and analysis of graph data structures
-
gamenite
A graph library for board games
-
dsu-tree
A non-invasive disjoint-set-like data structure implementation
-
index-map
A map with automatically generated usizes as keys
-
transit_model_relations
Modeling the relations between objects
-
ramp_table
RampTable, a data structure useful for certain specialized situations
-
wolf-graph-dot
Adds support for generating Graphviz DOT files from wolf-graph graphs
-
datalogic-rs
A fast, type-safe Rust implementation of JSONLogic for evaluating logical rules as JSON. Perfect for business rules engines and dynamic filtering in Rust applications.
-
embedrs-bytes
Types and traits for working with bytes
-
wolf-graph-mermaid
Adds support for generating Mermaid diagrams from wolf-graph graphs
-
trie
An ordered map and set based on a trie
-
tc-state
TinyChain's general state enum
-
hashed
type you can convert any hashable type into and still do equality checks on
-
ziptree
Tarjan's zip tree implemented in Rust
-
small_vec2
Vector on the stack or heap need nightly rustc
-
persistent_rope
An immutable persistent rope data structure
-
once-list
an append-only per-item list
-
fera
An aggregation of algorithms, data structures and supporting crates
-
xtree
general purpose tree data structure
-
atomic_swapping
An arbitrary type atomic storage with swap operations
-
weakheap
Weak Heap data structure implementation in Rust
-
ring_queue
A double-ended queue implemented using a vector that reuses space after elements are removed
-
fibheap
but actually useful Fibonacci Heaps
-
street_index
small utility crate for working with road name / street indexing for cartographic purposes
-
generic_event_queue
generic event-queue API
-
keyed_vec
Vector type where the key is a custom object to avoid mixing indices between vectors
-
unsized_enum
Unsized enum implementation
-
unique-id-collection
Collection with unique Id
-
json-test
A testing library for JSON Path assertions in Rust
-
const-buffer
A fixed-capacity memory buffer allocated on the stack using const generics
-
pair_macro
Create types consisting of the same type values such that Pair, Triplet, and so on
-
bitwrap
pack/unpack data into byte array
-
aabel-bloom-rs
implements the Bloom filter
-
subway
Fast, performant in-memory SkipList implemented in Rust
-
persistent_array
Persistent array is a library for working with memory mapped arrays
-
simple-matrix
generic matrix library
-
latestmap
latest map
-
gtrie
Generic trie implementation with a support of different key and value types
-
compacts-bits
succinct bit vector
-
range-set-blaze
Integer sets as fast, sorted integer ranges; Maps with integer-range keys; Full set operations
-
aabel-hashmap-rs
implements extensions for HashMap
-
ads-rs
(Algorithms and Data Structures) is a set of useful generic production-ready algorithms and data structures
-
xio_instructionset
XIO instructionset data structures
-
enum-ref
Proc. macro for generating enum discriminant types.
-
bs
bitset with small-set (single-word) optimization
-
ziku-pds
probabilist data structures
-
stacking
using a stack datastructure in rust
-
large-json-array
A streaming JSON‐array parser that yields one object at a time
-
eitherq
Queue which support two different types
-
searchy
Search index (in-memory), that can be constructed and searched using a bag of words model, with cosine similarity scoring based on tf-idf. Supports multiple search terms, permissions…
-
ethers-impl-rlp
RLP serialization support for uint and fixed hash
-
trans-gen-java
Generating Java trans code
-
weighted_random_list
A Vec<T> that allows you to define the weight of each entry and randomly get entries
-
stac-async
Asynchronous I/O for stac-rs
-
aversion
Versioned data structures with auto-upgrading
-
ttm-rs
CLI to turn tuples into adjacency matrices
-
flow-graph
A representation of a graph data structure for flow-based programming
-
dirbuf
reusable directory bufferes
-
query-graph
A concurrent incremental query dependency graph system
-
graphsearch
graph search and representation library
-
ttl-queue
A queue that drops its content after a given amount of time
-
bounded
numeric types
-
cloneless_cow
A greatly-reduced implementation of Cow that does not require T to be Clone but allows for storing either a reference or an owned instance for future needs of references to T
-
cdl-list-rs
A circular doubly linked list implementation using Rc<T> and RefCell<T>
-
contigious-tree
Write and read tree graphs to and from contigious blocks of memory
-
ABtree
AVL and Btree for rust
-
sliding_window
A fixed size, heapless sliding window
-
zero_ecs
Entity Component System (ECS), using only zero-cost abstractions
-
push-trait
Push trait for collectons
-
const-vec
Vec-like data structure with immutable push method
-
head
Common types with inline headers, such as HeaderVec for Vec
-
smart_access
A minimalistic "lazy bidirectional pointer" framework
-
evenio
An event-driven entity component system
-
plum
Probabilistic data structures for rust
-
rust_release_channel
A data structure for Rust release channel metadata
-
sandpile
do sandpile computations
-
kudzu
concurrent, grow-only data structures
-
collect-mac
collect!
macro, which can be used to easily construct arbitrary collections, includingVec
,String
, andHashMap
. It also endeavours to construct the collection with a single allocation, where possible. -
json_deref
JSON internal field links resolver
-
enumap
A HashMap and HashSet like interface for enums backed by an array
-
calf-vec
Small copy-on-write arrays, essentially combining
SmallVec
andCow
-
crossbeam-skiplist-mvcc
Support MVCC (Multiple Version Concurrent Control) for
crossbeam-skiplist
-
wildbird_macro_derive
Rust Framework 🐦 | Macro System
-
yuuang_dominators
null
-
associative_positional_list
AssociativePositionalList is a list-like container in which each value is associated with an index, but unlike other list containers, the index for a value can be determined efficiently
-
structo
Data structures made in Rust
-
nostd-bv
Bit-vectors and bit-slices
-
autocomplete
Auto-complete feature using Trie data structure
-
unempty
Non-empty data structures for Rust
-
rs-collections
generic collections (no dependency on std)
-
handy-dandy-macros
A collection of some handy dandy macros
-
swift-mt-message
A fast, type-safe Rust implementation of SWIFT MT message parsing with comprehensive field support, derive macros, and validation
-
cojson
Collaborative JSON (A high performance CRDT)
-
retrace
Safe, generic rollback log with predictable latency
-
btreelist
A list data structure that has efficient insertion and removal in the middle
-
velarixdb
An LSM Storage Engine focused on reduced IO amplification
-
final
Wrap a value in a type that does not give out mutable references
-
bytes-expand
Types and traits for working with bytes
-
graff
manipulating graphs
-
accumulators
Complete package of multiple Accumulators with Stores and hashing functions (Hashers)
-
spatial_hash_3d
3D spatial hash grid implementation optimized for speed. What it does/why you'd want one: https://www.youtube.com/watch?v=sx4IIQL0x7c
-
kaola
A Persistent Delayed Queue in Rust
-
batbox-range
Helpers for working with ranges
-
elu
Traits and implementations for EVAL-LINK-UPDATE data structures
-
fpdec
Decimal fixed-point arithmetic
-
rs-bucket-filter
Skips slow scans using cache, bloom filter,
-
amazed
A graph maze building library
-
slots
Fixed size data structure with constant-time operations
-
bookfile
A container file format with chapters and an index
-
arbitrary-int
Modern and lightweight implementation of u2, u3, u4, ..., u127
-
bytes_to_type
facilitate byte conversion to specified types using macro generation
-
stonks
Sets that allow borrowing while inserting entries
-
unrolled-linked-list
unrolled linked list in rust
-
mycelial-crdt
mycelial crdt
-
dfb
Dynamic-Fifo-Buffer, like AnyMap but uses a VecDeque to store values and treats access as a Fifo
-
fenwick-tree
binary indexed tree (Fenwick tree) data structure in Rust
-
ipld-dagpb
IPLD DAG-PB codec
-
dag_compute
construction of arbitrary computation DAGs and the expression of dataflow graphs
-
compacts-dict
succinct dictionary
-
btreemultimap-value-ord
A multimap based on the BTreeMultimap where multiple copies of a value are stored only once
-
linked_list_c
Safely work with c compatible linked lists
-
pointer-value-pair
A pair of a pointer and a small integer packed into a pointer-sized object
-
amalgamator
A set/map like data structure that allows you to combine members together
-
vortex-scalar
Vortex Scalars
-
valued
Describe your data in terms of basic data structures. Get serialization and other facilities for free
-
bloomfilter-rust
A bloomfilter implementation in Rust
-
fcsd
Front-coding string dictionary
-
simple-collection-macros
configurable macros for maps and sets
-
dimension_shiftable_buffer
A dimension shiftable buffer
-
id-set
A bitset implementation that stores data on the stack for small sizes
-
unsized-stack
Fast heterogeneous / unsized stack
-
pathlink
A URL type whose path can also be used as a filesystem path, for Rust
-
mumu-process
Proces tools plugin for the Lava language
-
std_collection_traits
Abstraction of operations in std collection types
-
find_jpeg
Find JPEG data structures within other data
-
blocked-vec
A vector of byte blocks behaving like files
-
arraylike
trait for using arrays without needing const expressions
-
structures
collection data structures
-
sparse_vec
Datastructure that stores separate but contiguous ranges of values efficiently
-
bitwrap_extra
pack/unpack data into byte array
-
intsplit
splitting numeric types into their binary component arrays
-
any_handle
A thread-safe, type-safe smart pointer that can share, store and downcast a
dyn Any
-
tree-sitter-generate
generating C source code from a tree-sitter grammar
-
ctoption
A compile-time option whose discriminant is elevated to compile time
-
vesema
Map/Set collections optimized for very small problem sizes
-
geonum
geometric number library supporting unlimited dimensions with O(1) complexity
-
ranged_set
A set that stores contiguous values as a range. Designed to be used with numeric types.
-
bonsai
Index arithmetic functions for perfect binary trees
-
quercus
Easy to use CLI tree for your branchy info
-
pui-arena
Generalized Arenas that can be used on
no_std
-
rolling-set
A first in first out set that never grows above a certain size
-
bitmap4rust
creating and manipulating bitmaps
-
rblist
A block-based, non-circular double-linked list implementation for Rust
-
wasmer-types
Wasmer Common Types
-
nonempty_range
Range representing nonempty ranges
-
lmfu
Low Memory Footprint Utilities (String, HashMap, JSON)
-
hashmap_ext
Extensions to std::collections::HashMap
-
history-buffer
A fixed capacity, write-only, ring buffer
-
dltree
Doubly linked tree with leaf-considering typing
-
mrslac
sparse matrix data structures
-
banyan-utils
work with banyan trees
-
id_cache
A cache data structure which generates sequentially-assigned ids for unique values
-
rbtree-arena
A cache friendly red black tree where nodes live on sequential memory
-
bit-vec_serde
A vector of bits
-
by_address
Wrapper for comparing and hashing pointers by address
-
engcon_macros
macros to define contracts on data-structure level
-
artsy
ART Tree data structure library
-
linked_array
Arbitrarilly long fixed-size arrays
-
flats
flattens nested structures into a flat single dimension map
-
brood
A fast and flexible entity component system library
-
treers
Sedgewick's tree maps
-
cons-rs
containing a Cons data structure
-
ranno
Annotations over recursive data structures
-
cursorvec
Cursored vector container
-
evillatoro-data-structures
Personal crate of me trying to implement data structures and algorithms in Rust
-
dotty
generating DOT graph files
-
varset
an any type set of items
-
collect-me
Additional collections not included in the Rust standard library
-
dot_json
Tools for dot map representations of serde_json Maps
-
sequence_buffer
Sequence buffer data structure implementation
-
blfilter
Bloom filter implementation using farmhash
-
succinct_rs
Succinct Data Structures library for Rust
-
hexga_generational
GenVec, ideal for MAS (Multi-Agent System), where each agent can be removed at any time and has references to other agents
-
pointer_vec
The PointerVec works same as the std Vec structure except the Vec has a size of 3 usize (pointer, length, capacity). This crate provides a replacement that has a size of 1 pointer.
-
loaf
Why have a slice when you can have a loaf?
-
tree-automata
Term Rewriting Systems
-
rmat
minimal implementation of two-dimensional matrix algebra
-
disjoint-hash-set
A disjoint set / union-find data structure suitable for incremental tracking of connected component identified by their hash
-
tar-no-std
read Tar archives (by GNU Tar) in
no_std
contexts with zero allocations. The crate is simple and only supports reading of “basic” archives, therefore no extensions, such as GNU Longname… -
nonoverlapping_interval_tree
Map data structure keyed on (non-overlapping) ranges that allows lookup of a point within a range. Can be no_std (with use of alloc crate).
-
wordlist-generator
A handy wordlist generator
-
allehanda
Miscellaneous data structures and algorithms
-
maybe-cell
An UnsafeCell optionally containing a value, with the state externally managed
-
m6bitmap
Compact Map using continuously bits
-
uid
creation of unique IDs
-
bit-array
A compile time sized array of bits
-
semver-store
An HashMap structure that uses semver strings as keys
-
qt-json-rs
JSON library for QT
-
graphstack
Graph-structured stack
-
fast-rustc-ap-rustc_data_structures
Automatically published version of the package
rustc_data_structures
in the rust-lang/rust repository from commit 15812785344d913d779d9738fe3cca8de56f71d5 The publishing script for this crate lives at: https://github… -
miniconf
Serialize/deserialize/access reflection for trees
-
floco
validates floats against constraints
-
localsavefile
Save and load structs from a local file. A convenience wrapper around the savefile crate.
-
ultrametric_matrix_tools
Toolbox that provides functions and data structures to generate and handle ultrametric matrices
-
aabel-identifier-rs
defines identifier behavior, such comparing them, or generating sequences of identifiers
-
stack-buf
Vector-like facade for arrays allocated entirely on the stack
-
vortex-sampling-compressor
Vortex compressor that uses statistical sampling
-
collection
Deterministic, copy-on-write balanced search trees
-
datavalue-rs
High-performance Arena-based alternative to serde_json::Value
-
fixedbitset-stack
A forked version of FixedBitSet that supports const generics
-
random-access-storage
Abstract interface to implement random-access instances
-
typesense_codegen
client for typesense generated with openapi spec
-
cola
A text CRDT for real-time collaborative editing
-
suggestion_trie
A Radix trie for suggestion search, it allows to search for data indexed by a set of keywords fast
-
orx-pinned-vec
PinnedVec
trait defines the interface for vectors which guarantee that elements added to the vector are pinned to their memory locations unless explicitly changed -
nbits_vec
Small bits value (e.g. 1,2.. bits) vector implementation.
-
merkle-search-tree
A data structure for efficient state-based CRDT replication and anti-entropy
-
probabilistic_data_structures
Probabilistic data structures in Rust Lang
-
hoop
Fixed ring buffer that allows non-consuming iteration both ways
-
known-errors
Well-known errors
-
lazy_concat
Lazy concatenation for Strings and Vecs
-
estring
way to parse a string using type annotations
-
atb
lock-free triple buffer
-
roaring-graphs
Graph data structure backed by roaring bitmaps
-
boxed_array_ringbuffer
A ring buffer of fixed size, that uses a boxed array as storage, therefore avoiding re-allocations when converting from Vec or to VecDeque
-
projected-hash-map
projected HashMap over HashSet
-
ulid-generator-rs
generating ULIDs
-
maybe-string
newtype wrapper that represents a byte vector that may be a valid UTF-8 string
-
easy_graph
Data structure that represent generic vertices and undirected connections
-
slicedvec
A segmented vector for iterating over slices
-
mumu-sys
System calls and tools plugin for the Lava language
-
btree-map
A data structure for storing and manipulating fixed number of elements of a specific type
-
collection_literals
macros for initializing std::collections
-
typescript-definitions-ufo-patch
serde support for exporting Typescript definitions
-
shifted_vec
A growable datastructure with positive and negative indexing built on top of
std::vec::Vec
calculating the offset automatically -
dyobj
improved version of the ECS pattern
-
mumu-fs
Filesytem tools plugin for the Lava language
-
hirpdag
procedural macros for Hash Consed, Immutable, Reference Counted, Persistent, Directed Acyclic Graph data structures
-
rtps-elements
Core message data structures generated from RTPS IDL
-
const-assoc
A const-capable Map type backed by a static array
-
im-rope
Unicode strings backed by RRB vectors
-
res
build-script dependency for managing your project's resources
-
object-merge
Traits useful for recursively merging document-like objects
-
sortbuf
Data structure for sorting large numbers of items
-
flit
Bloom filter backed by xxHash
-
simple-vec-collections
Collections implemented using Vec
-
mexset
Implementing a set with MEX support
-
art_dice
Contains structures for building dice with arbitrary symbols and functions for determining roll probabilities
-
stable_queue
Queues with stable indices
-
tagged-tree
A tree-like data structure where the values are tagged
-
lineartree
tree data structure for rust
-
backtracking_iterator
generic iterator with an item history, capable of backtracking and forgetting
-
ngds
Rust bindings for AVFounation
-
one-of
Macro to represent a type that can be converted either
From
orTryInto
the given types -
mapro
A tiny macro library for creating std::collections
-
dumpster
A concurrent cycle-tracking garbage collector
-
bagofholding
collection types. Efficient data structures that look bigger on the inside.
-
tourney
A small package for generating and simulating tournaments of various structures
-
interval-rbtree
An interval tree implementation using Red-Black Tree as its underlying data structure
-
header-slice
Definitions for slices with headers, and a vec-like type with a header allocated inline
-
arena-graph
a questionable library for arena-allocated graphs
-
dlist
List data structure based on AVL tree. It can store elements which have dimension and quickly search for elements by distance from 0.
-
graph-rs
graph library
-
trait-map
Rust map for dynamic trait storage and references
-
quarkrs
A collection of small life improvements for rust
-
my-stack
stack implementation in Rust
-
rawenum_macro
A procedural macro to generate from_* methods for enums based on their integer discriminants
-
simid
Universally Unique IDentifier (UUID)
-
terms
Tree terms and patterns data structures
-
fid-rs
High performance FID (Fully Indexable Dictionary) library
-
smallbitset
series of allocation free sets capable of holding small integer values
-
watermark
watermarking set for in-order insertions
-
lazy_list
Lazily-populated lists, finite or infinite
-
finite-automata
A collection of extendable finite automata with immutable state and transition data
-
const_queue
A stack-only, no_std queue using const generics
-
stacked
Stack-allocated data structures. This was a good learning experience, and these container types work well, but in the end, I was not able to beat the performance of Vec
-
bondrewd
Bit-Level field packing with proc_macros
-
graph-api-benches
Benchmarking utilities and performance tests for the graph-api ecosystem
-
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…
-
altdeque
An alternative deque implementation
-
batbox-collection
Collection of identifiable objects
-
common-tree
common tree lib
-
littlechestnutgames-trie
A generalized trie implementation for quick prefix searching
-
unrecurse
Helper crate for rewriting your recursive code in iterative way
-
id-map
Data structure of values indexed by IDs
-
string32
A string that is indexed by u32 instead of usize
-
holodeque
Array- and slice-backed double-ended queues in 100% safe Rust
-
list-any
Type erased slices and Vecs
-
mut-binary-heap
Enhanced version of std::collections::BinaryHeap that supports increase and decrease key, max, min, and custom-order heaps
-
stable-bloom-filter
A Rust-implementation of a stable Bloom filter for filtering duplicates out of data streams
-
euui
An Extended Universal Unique Identifier
-
uuid-rng-internal
Private implementation details of the uuid crate
-
indexed-hash-set
A bidirectional set whose entries can either be accessed via an index or via hashing
-
trans-schema
Generating trans schema from Rust code
-
orx-self-or
Defines SoR (self-or-ref) and SoM (self-or-mut) traits that are useful in reducing code duplication and pushing forward the ownership transfer decision from the type designer to the consumer
-
pegitan
A bunch of random algorithms library
-
quither
A flexible enum-based utility for representing values that may be on the left, right, neither, or both sides
-
enum_from_variant
macro to generate From<T> trait implementations for enum variants, simplifying error conversions and enum mapping
-
vec_2d
2d vector for Rust
-
hedel-rs
A Hierarchical Doubly Linked List
-
toboggan-kv
abstraction layer over multiple KV stores
-
trans-gen-go
Generating Go trans code
-
csgo-gsi-payload
Data structures for CSGO Game State Integration
-
prefix_tree_map
generic prefix tree (trie) map with wildcard capture support
-
transit_model_collection
Manage collection of objects
-
flashtext
algorithm to search and replace keywords in given text
-
simple-observable
observable pointer for mutable and immutable data
-
rdf-vocab
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
ring-vec
A zero-dependency, no-std compatible, producer-consumer, fixed-size, item-oriented ring buffer backed by a vector
-
simple-bitrange
manipulating bit ranges which is common when working with IC registers
-
priority-set
A no_std Priority Set
-
indexed-bitfield
An indexed bitfield, to track presence or absence of up to 128 elements
-
sorting-vec
Sorts a vector using a btreemap
-
endianness
reading numbers in big-endian and little-endian
-
generic-arrayvec
Interop between the arrayvec and generic_array crates
-
static-box
A stack-allocated box that stores trait objects
-
dynamization
Fast insertion for static containers
-
map_ext
Extensions to std::collections::HashMap and std::collections::BTreeMap
-
slice-cell
A
Cell<[T]>
-like mutable slice, that allows slice-like APIs -
vhr_serde
A serde (de)serializer crate for the simplist possible binary format
-
bitstr
contiguous sequence of bits in memory
-
nanobox
NanoBox
optimization: store small item on stack and fallback to heap for large item -
grapes
Persistent graph data structures: Tree, Graph, Arena & more
-
priority-matrix
A matrix that supports per-row, per-column and whole-matrix maximum key queries
-
stack-stack
stack-allocated stack
-
rdf-query
RDF.rs is a Rust framework for working with RDF knowledge graphs
-
null-vec
A specialized vector that stores nullable values
-
flexible-string
A stack heap flexible string designed to improve performance
-
predicates-core
An API for boolean-valued predicate functions
-
valog
A lock-free, generic, lightweight value log
-
disk-ringbuffer
lock free on disk ringbuffer to be used in the implementation of Franz
-
simple-graph
Graph library with ability to serialize/deserialize Trivial Graph Format
-
svec
Dart-style list in Rust
-
simple-canvas
generic 2 dimensional canvas struct
-
byte-sequence
A little marco that creates structs to be used as byte sequences (for ApiKeys, SessionIds and so on)
-
nd-slice
Wrapping
std::slice
s to represent n-dimensional arrays -
collect
An experimental extension of std::collections
-
simple_ringbuf
Ringbuf is a speedy lightweight fixed-size infinite-use collection optimized for straightforward single threaded use
-
bloomy-rs
Fast bloom filter implementation
-
structz
Anonymous struct implementation in rust
-
indextree-ng
Arena based tree structure by using indices instead of reference counted pointers. Fork of indextree by Sascha Grunert which allows to remove nodes
-
bm-le
Little endian 256-bit layer for binary merkle trie with ssz compatibility and extensions
-
base_custom
Use any characters as your own numeric base and convert to and from decimal
-
vector_mapp
A Vec based map
-
learn_rust_together
Curated collection of lists of useful resources to learn Rust together
-
neighborgrid
A 2-D grid datastructure with easy to use iterators and adjacent cell methods
-
bytey
convenient and easy to use byte storage
-
ckb_multi_index_map
MultiIndexMap: A generic multi index map inspired by boost multi index containers
-
pi_arr
lock-free & auto-expansion array
-
im_interval_tree
An immutable data structure for storing and querying a collection of intervals
-
compact-map
'Small map' optimization: store up to a small number of key-value pairs on the stack
-
elastic-array-plus
Elastic vector backed by fixed size array
-
dep-tree
Dependency tree structure for building dependency requirements
-
prio-queue
priority queue implemented as a heap stored in a Vec
-
map-of-indexes
A compact key-value map for unique but not dense indexes
-
simple-octree
octree implementation written in Rust
-
xtd
An extended utility library
-
nexum
collection of commonly used data structures
-
pgdb_to_struct
CLI application to generate Rust struct files from PostgreSQL database tables
-
peapod
Ultra-compact storage for enums
-
rb
A thread-safe ring buffer with blocking IO
-
no_proto
Flexible, Fast & Compact Serialization with RPC
-
tree-graphviz
Generate GraphViz DOT directed trees, based on an arbitrary tree structure
-
leonardo-heap
Heap structure supporting fast in-place partial sorting
-
stable_bst
An ordered map and set based on a binary search tree. Works with stable Rust 1.9.0.
-
fp-collections
An alternate collections library for rust
-
enum-set
A structure for holding a set of enum variants
-
rust-automata
A framework and a DSL for building finite state machines in Rust
-
wrapping
slices and arrays
-
lupine
A bloom filter using FX Hash with Kirsch and Mitzenmacher optimization
-
rsbloom
bloom filter implementation in Rust
-
stringz
A way to use strings in generic paramters
-
vortex-runend-bool
Vortex run end encoded boolean array, strictly better than runend for bool arrays
-
number-general
A generic number type for Rust which supports basic math and (de)serialization
-
visit_diff
Efficiently finding differences between data structures
-
clouseau
A query language for inspecting Rust data structures at runtime
-
collect-once-hashmap
A hashmap that can be collected only when there are unique keys in the iterator
-
doubly-linked-list
double link list
-
datastructures
A variety of data structures for learning purpose
-
pulz-bitset
bitset implementation
-
parity-hash
A collection of fixed-size byte array representations
-
explicit-discriminant
Macro for enforcing enum discriminants
-
smolbox
Like a Box, but small objects are stored on the stack
-
simple_trie
array backed trie
-
hashindexed
A cache. A set which compares elements in a customisable way without overriding the eq() and hash() functions on the type itself.
-
kvstructs
General basic key-value structs for Key-Value based storages
-
running_buffer
data types for keeping track of changing values, allowing analysis in trends and histories
-
flat-veb
Fast implementation of vEB trees without internal allocation
-
hodgepodge
enums
-
qmap
LinkedHashMap alternative using nested VecDeque as LinkedList replacement
-
generic-cursors
A generic way to mutably traverse acyclic recursive data structures
-
dot_tree
Create, query and store binary trees
-
woodland
Easy to use implementations of popular tree data structures such as Binary, Binary Search, AVL, Red-Black, and more
-
buf-list
A list of buffers that implements the bytes::Buf trait
-
get-many-mut
Stable polyfill for slice::get_many_mut
-
vpb
key-value proto buffer for veladb
-
vortex-roaring
Vortex roaring bitmap arrays
-
intrusive-containers
intrusive data structures
-
bits128
A struct to iterate over 128 bits by taking only 128 bits
-
rusted_list
A ever sorted list for rust that is operating on binary search
-
html-types
HTML Data structures
-
ranged_integers
An integer restricted to a compile-time defined bounds driven by const generics
-
rusty-priority-queue
A priority queue implementation
-
fast-btree
A fast B-tree implementation ported from tlx library
-
nnn
Generate your newtypes from a single macro
-
moonlight_collections
Collections for Rust
-
tranche
Tranches are an alternative to slices
-
open-payments-iso20022
Open Payments - Message Parsing Library - ISO20022
-
vertree
A persistent trie where each node is typed and versioned
-
vector-trees
Vector backed B and AVL trees
-
linebuffer
ringbuffer for dynamic sized u8-elements
-
text_utils_s
edit array. Example delete duplicate in array. Clear string
-
gridd
A generic, dirt-simple, two-dimensional grid
-
b-tree
A persistent B+ tree using freqfs
-
awint_ext
Externally allocating
awint
functionality -
store-interval-tree
A balanced unbounded interval-tree in Rust with associated values in the nodes
-
identifier
Generate 128 bits id structs easily
-
bytebufrs
A ring buffer for bytes implementing io::Read and io::Write
-
inline-xml
Embed XML data directly in your Rust code
-
prioq
Priority Queue implemented using std::collections::BinaryHeap
-
ax_banyan_utils
work with banyan trees
-
wolf-graph
Data structures and algorithms for working with graphs with reference or value semantics
-
handlebox
A map-like collection that reuses unused keys
-
sorted-vec2
Maintained successor to the sorted-vec crate
-
vortex-alp
Vortex ALP array
-
aliri_braid
Improve and strengthen your strings by making them strongly-typed with less boilerplate
-
num-rational
Rational numbers implementation for Rust
-
bmap
A bitmap with an internal counter
-
bstree
A Binary Search Tree written in Rust
-
lilbits
Super fast u8 set (ie bitmap) relying on the assumption that elements are <= 63
-
immutable_string
Immutable Single Instance Strings for Rust
-
packed_str
Store immutable strings in a single packed allocation
-
staticbitset
A container like std::collections::BitSet but static storage + Copy trait
-
btree_monstousity
a code port of BTreeMap but with comparator functions
-
fral
Functional random-access lists
-
ptr-union
Pointer union types the size of a pointer by storing the tag in the alignment bits
-
disjoint-collections
Disjoint-set data structures
-
suffix_trie
Suffix trie for searching
-
dot3
generating Graphviz DOT language files for graphs
-
comprehend
Python like list, set and hashmap comprehensions via macros
-
adjacency-list
Adjacency List and Adjacency Graph
-
tampon
Contains SAFE Rust functions, macro and trait to serialize / deserialize data structure and/or object and generate buffer
-
vortex-mask
Vortex Mask - sorted, unique, non-negative integers
-
zeen_filter
A fast and optimized Bloom Filter implementation in Rust
-
bittree
O(1) find functions in a special data structure called a bit tree
-
slice-deque
A double-ended queue that Deref's into a slice
-
smallqueue
A queue with a no-alloc optimization when the size is 1 or 0
-
subset
Various subsets of slice's items that are able to iterate over references to selected items
-
trips
generic triple store written in Rust
-
provenance
Container structures that generate key upon insertion that only works with the map that generated it
-
offset-views
Create and index offset views of arrays, slices, strings, etc
-
truncating-arraystring
ArrayString wrapper with truncating Write
-
comfy-bounded-ints
Bounded-integer types focused on ergonomics and safety. (See README.md)
-
rand_map
A map that creates a random handle on insertion to use when retrieving
-
bytesstr
An immutable reference-counted UTF8 String
-
bintrie
A performant binary trie data structure that doesnt store data or keys
-
bitsets
BitSet implementations: Dense, Compressed, Memory-Mapped, and Roaring
-
hj_ds
A data structure library for Rust
-
dcbor
Deterministic CBOR ("dCBOR") for Rust
-
trie-generic
A trie with generic content
-
tuco-core
Contains the Tuco trait, used by the Tuco crate
-
persistent-list
A singly-linked persistent thread safe list
-
syntree
A memory efficient syntax tree for language developers
-
array-object
Self-describing binary format for arrays of integers, real numbers, complex numbers and strings, designed for object storage, database and single file
-
stacked_type_map
Compile time map of any type
-
smol_str
small-string optimized string type with O(1) clone
-
sexpr_matcher
Structural pattern matching macro for S-Expressions and other list-like data structures
-
compacts
compact data structures
-
btree_network
A generic network (undirected graph) data structure
-
skew-forest
Skew-binary random access lists
-
bb-geometry
A small crate containing some data structures and methods for 4d Euclidean geometry
-
tiny-interner
Easy to use string interner with fast access to underlying strings and minimal memory footprint
-
generic-json
Generic JSON traits
-
chtholly
Tree, a data structure originated from CF896C
-
minimum_redundancy
encode and decode data with binary or non-binary Huffman coding
-
fixed_circular_buffer
A queue (the abstract data structure) implemented using a fixed size circular buffer
-
mti
that implements type-safe, prefix-enhanced identifiers based on the TypeID Specification
-
nth-cons-list
The nth cons list implementation
-
sorted-list
SortedList data structure which allows mapping an Ord key to multiple distinct PartialEq values
-
pq-bincode
A wrapper crate of queue-file for bincode serializable structs
-
j2ds
A small collection of data structures not found in the standard library
-
bitsetium
One stop shop for all bitset needs
-
immutable-avl
An Immutable map and set implement for rust based on an AVL tree
-
lighter
Macro for rewriting string matches as tries
-
corosensei
A fast and safe implementation of stackful coroutines
-
pi_phf_map
phf_map
-
dynstr
A string implementation optimized for manipulations
-
slotmap-fork-otter
Slotmap data structure - temporary fork for Otter
-
geogrid
Manipulate geographic data on a grid
-
cranelift-bforest
A forest of B+-trees
-
fr-trie
Fuzzy Radix Trie
-
ittybitty
An itty bitty bitset to hold your itty bitty bits
-
pi_append_vec
Only supports append vectors, lock free
-
atlist-rs
LinkedList which is allowed to insert/remove element by immutable iterator.Adding, removing and moving the elements within the list or across several lists does not invalidate the iterators or references…
-
gavl
A fast implementation for a map and a set using an AVL tree
-
enum-map-derive
Macros 1.1 implementation of #[derive(Enum)]
-
vhr_datatypes
data/file structures used in the computer game Valheim
-
typed_tuple
Type based operations on primitive tuple elements
-
gsgdt
Generic Stringly Typed Graph Datatype
-
authenticode
working with Authenticode (no-std)
-
vecmap
Vec-based Map and Set data structures
-
field_accessor
A procedural macro to get and set a struct field by String dynamically
-
opt_arrayvec
Vector-like container with fixed capacity, using options instead of stored length
-
typeslice
type-level slices
-
lfbs
Lock-free stack with batched pop
-
immutable
persistent data structures for Rust
-
tantivy-columnar
column oriented storage for tantivy
-
to-binary
Converts From Hex, UTF-8, Vector of Bytes, or a Byte Slice to a Binary String And Implements Many Useful Functions For Binary Strings
-
token-string
Short (up to 65,535 bytes) immutable strings to e.g. parse tokens, implemented in Rust. These are sometimes called 'German Strings', because Germans have written the paper mentioning them.
-
numberwang
custom number malarkey, including variable-bit-width integers
-
stac-validate
Validate STAC objects with jsonschema
-
media-type-version
Extract the format version from a media type string
-
terees
a collection of tree-like data structures
-
trashmap
A HashMap and HashSet that operate directly on hashes instead of keys, avoiding rehashing
-
ser_mapper
Mapped DTO serialzation wrapper for DBO/Model
-
dbutils
Utils for developing databases
-
funcmap
Derivable functorial mappings for Rust
-
ransel
rank/select succinct data structures
-
const-arrayvec
A vec-like type backed by an array on the stack
-
lf-sll
A lock-free singly-linked list
-
map-trait
Generic Map trait
-
proconlib
Data structures for programming contests
-
immutable-seq
Immutable sequence data structure
-
dsll
Fast Thread Safe Doubly Sorted Linked List
-
trie-rs
Memory efficient trie (prefix tree) and map library based on LOUDS
-
bitarray-set
A set of bits backed by bit-array
-
byte_trie
A compressed trie based on bytes with some weird child node bucket sizes
-
indexlist
A doubly linked list, backed by a vector
-
succinct_vec
A Vec-like datastructure with less memory overhead
-
awint_dag
DAG
awint
functionality -
rc-box
Known unique versions of Rc and Arc
-
flex-alloc
Data structures with extra flexible storage
-
case_insensitive_string
A case insensitive string struct
-
arith
containers with arithmetics
-
weekdays
Days of the week bit-mapped in a single byte
-
batbox-diff
Easy struct diffing
-
triemap
Triemaps for Rust
-
doubly
linked lists in rust
-
render_as_tree
visualizing tree data structures via text
-
bit_collection
A trait for iterating over the individual bits of a collection
-
grafferous
graph library with a focus on generic data in nodes
-
higher_order_functions
A small collection of traits for implementing higher order functions
-
izihawa-tantivy-columnar
column oriented storage for tantivy
-
comparable
comparing data structures in Rust, oriented toward testing