-
bitflags
A macro to generate structures which behave like bitflags
-
zerocopy
makes zero-cost memory manipulation effortless. We write "unsafe" so you don't have to.
-
anyhow
Flexible concrete Error type built on std::error::Error
-
derive_more
Adds #[derive(x)] macros for more traits
-
http
A set of types for representing HTTP requests and responses
-
once_cell
Single assignment cells and lazy values
-
generic-array
Generic types implementing functionality of arrays
-
ordered-float
Wrappers for total ordering on floats
-
half
Half-precision floating point f16 and bf16 types for Rust implementing the IEEE 754-2008 standard binary16 and bfloat16 types
-
bon
Next-gen compile-time-checked builder generator, named function's arguments, and more!
-
itertools
Extra iterator adaptors, iterator methods, free functions, and macros
-
derive_builder
Rust macro to automatically implement the builder pattern for arbitrary structs
-
predicates
boolean-valued predicate functions
-
validator
Common validation functions (email, url, length, …) and trait - to be used with
validator_derive -
pin-project-lite
A lightweight version of pin-project written with declarative macros
-
num_enum
Procedural macros to make inter-operation between primitives and enums easier
-
signal-hook
Unix signal handling
-
typenum
type-level numbers evaluated at compile time. It currently supports bits, unsigned integers, and signed integers. It also provides a type-level array of type-level numbers, but its…
-
bytes
Types and traits for working with bytes
-
miette
Fancy diagnostic reporting library and protocol for us mere mortals who aren't compiler hackers
-
arrayvec
A vector with fixed capacity, backed by an array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.
-
headers
typed HTTP headers
-
approx
Approximate floating point equality comparisons and assertions
-
eyre
Flexible concrete Error Reporting type built on std::error::Error with customizable Reports
-
typed-builder
Compile-time type-checked builder derive
-
snafu
An ergonomic error handling library
-
thiserror
derive(Error)
-
utoipa
Compile time generated OpenAPI documentation for Rust
-
iri-string
IRI as string types
-
self_cell
Safe-to-use proc-macro-free self-referential structs in stable Rust
-
human-panic
Panic messages for humans
-
enumflags2
Enum-based bit flags
-
similar-asserts
assert_eq! like macros with colorized diff output
-
assert-json-diff
Easily compare two JSON values and get great output
-
frunk
developers with a number of functional programming tools like HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid, Semigroup and friends
-
enum-map
A map with C-like enum keys represented internally as an array
-
macro_rules_attribute
Use declarative macros in attribute or derive position
-
ouroboros
Easy, safe self-referential struct generation
-
pin-project
safe and ergonomic pin-projection
-
cfg-if
A macro to ergonomically define an item depending on a large number of #[cfg] parameters. Structured like an if-else chain, the first matching branch is the item that gets emitted.
-
arrayref
Macros to take array references of slices
-
string_cache
A string interning library for Rust, developed as part of the Servo project
-
nonempty
Correct by construction non-empty vector
-
cmd_lib
Common rust commandline macros and utils, to write shell script like tasks easily
-
smol_str
small-string optimized string type with O(1) clone
-
memoffset
offset_of functionality for Rust structs
-
enum-iterator
Tools to iterate over all values of a type (e.g. all variants of an enumeration)
-
tap
Generic extensions for tapping values in Rust
-
io-lifetimes
A low-level I/O ownership and borrowing library
-
lazy_static
A macro for declaring lazily evaluated statics in Rust
-
inventory
Typed distributed plugin registration
-
zerovec
Zero-copy vector backed by a byte array
-
rustlings
Small exercises to get you used to reading and writing Rust code!
-
pyo3-stub-gen
Stub file (*.pyi) generator for PyO3
-
amplify
Amplifying Rust language capabilities: multiple generic trait implementations, type wrappers, derive macros
-
dlopen2
opening and operating on dynamic link libraries (also known as shared objects or shared libraries)
-
az
Casts and checked casts
-
downcast-rs
Trait object downcasting support using only safe Rust. It supports type parameters, associated types, and type constraints.
-
bit_field
bit field trait providing get_bit, get_bits, set_bit, and set_bits methods for Rust's integral types
-
const_panic
const panic with formatting
-
rustdoc-types
Types for rustdoc's json output
-
safer-ffi
Write safer FFI code in Rust without polluting it with unsafe code
-
rustc_apfloat
Rust port of C++ llvm::APFloat library
-
either
The enum
Eitherwith variantsLeftandRightis a general purpose sum type with two cases -
scopeguard
RAII scope guard that will run a given closure when it goes out of scope, even if the code between panics (assuming unwinding panic). Defines the macros
defer!, `defer_on_unwind… -
size
expressing, formatting, and interacting with file sizes
-
num
A collection of numeric types and traits for Rust, including bigint, complex, rational, range iterators, generic integers, and more!
-
nutype
The newtype with guarantees
-
extendr-api
Safe and user friendly bindings to the R programming language
-
bitfield
macros to generate bitfield-like struct
-
replace_with
Temporarily take ownership of a value at a mutable location, and replace it with a new value based on the old one
-
error-stack
A context-aware error-handling library that supports arbitrary attached user data
-
more-asserts
Small library providing additional assert_* and debug_assert_* macros
-
volatile
wrapper types for raw pointers
-
constcat
concat! with support for const variables and expressions
-
assert_matches
Asserts that a value matches a pattern
-
speculoos
Fluent test assertions
-
facet
Reflection for Rust: introspect types at compile time with metadata for serialization, pretty-printing, CLIs, and more
-
enum-ordinalize
enables enums to not only obtain the ordinal values of their variants but also allows for the construction of enums from an ordinal value
-
cfg_aliases
A tiny utility to help save you a lot of effort with long winded
#[cfg()]checks -
triomphe
A fork of std::sync::Arc with some extra functionality and without weak references (originally servo_arc)
-
dyn-clone
Clone trait that is dyn-compatible
-
new_debug_unreachable
panic in debug, intrinsics::unreachable() in release (fork of debug_unreachable)
-
konst
Const equivalents of std features: comparison, destructuring, iteration, and parsing
-
trie-db
Merkle-Patricia Trie generic over key hasher and node encoding
-
testresult
type for concise and precise test failures
-
derive-where
Deriving with custom trait bounds
-
rustler
Safe Rust wrappers for creating Erlang NIF functions
-
polonius-the-crab
Tools to feature more lenient Polonius-based borrow-checker patterns in stable Rust
-
writeable
A more efficient alternative to fmt::Display
-
bounded-collections
Bounded types and their supporting traits
-
mitsein
Strongly typed APIs for non-empty collections, slices, and iterators
-
text-size
Newtypes for text offsets
-
beef
More compact Cow
-
const-gen
generating (relatively) complex compile-time constants in rust
-
aide
A code-first API documentation library
-
by_address
Wrapper for comparing and hashing pointers by address
-
servo_arc
A fork of std::sync::Arc with some extra functionality and without weak references
-
oxc_index
Newtype-style helpers for
Vecandusize -
tynm
Returns type names in shorter form
-
aws-smithy-types-convert
Conversion of types from aws-smithy-types to other libraries
-
easy-cast
Type conversions which are expected to succeed
-
jsonptr
Data structures and logic for resolving, assigning, and deleting by JSON Pointers (RFC 6901)
-
unwinding
in Rust and for Rust
-
core_extensions
Extensions for core/std library types, and other miscelaneous features
-
byte-slice-cast
Safely cast bytes slices from/to slices of built-in fundamental numeric types
-
orchestra
Generate an orchestra of subsystems from a single struct
-
recursion
cache-aware stack safe recursion
-
scoped-tls
standard library’s old
scoped_thread_local!macro for providing scoped access to thread local storage (TLS) so any type can be stored into TLS -
rootcause
A flexible, ergonomic, and inspectable error reporting library for Rust
-
counter
package to count generic iterables
-
auto_impl
Automatically implement traits for common smart pointers and closures
-
faux
mock structs
-
stdext
Extensions for the Rust standard library structures
-
lender
A lending-iterator trait based on higher-rank trait bounds, with full std::iter::Iterator functionality
-
async-once-cell
Async single assignment cells and lazy values
-
as-any
provide the AsAny trait
-
pinned-init
facilitate safe pinned initialization
-
axum-valid
validation extractors for your Axum application, allowing you to validate data using validator, garde, validify or all of them
-
dynosaur
Dynamic dispatch for return position impl traits and async in Rust
-
merge
multiple values into one
-
educe
offers procedural macros designed to facilitate the swift implementation of Rust's built-in traits
-
decorum
Total ordering, equivalence, hashing, and constraints for floating-point types
-
fallible_collections
adds fallible allocation api to std collections
-
bevy_reflect
Dynamically interact with rust types
-
mem_dbg
Traits and associated procedural macros to display recursively the layout and memory usage of a value
-
color-eyre
An error report handler for panics and eyre::Reports for colorful, consistent, and well formatted error reports for all kinds of errors
-
bounded-integer
Bounded integers
-
rustc-literal-escaper
code to unescape string literals
-
fixedstr
strings of constant maximum size that can be copied and stack allocated using const generics
-
arrow-buffer
Buffer abstractions for Apache Arrow
-
tlua
Zero-cost high-level wrapper for Tarantool-LuaJIT
-
codegen
generating Rust code
-
nu-engine
Nushell's evaluation engine
-
tuples
many useful tools related to tuples
-
flagset
Data types and a macro for generating enumeration-based bit flags
-
erasable
Type-erased thin pointers
-
rustrict
profanity filter for Rust
-
mago-docblock
Analyzes PHP docblocks to extract annotations, tags, and documentation comments, aiding tools that rely on inline documentation
-
typewit
type-witness-based abstractions, mostly for emulating polymorphism in const fns
-
doc-comment
Macro to generate doc comments
-
async-trait
Type erasure for async trait methods
-
scoped-tls-hkt
more flexible version of
scoped-tls, allowing the following additional features: Storage of references to dynamically sized types. Storage of mutable references. Storage of… -
bounded-vec
Non-empty rust Vec wrapper with type guarantees on lower and upper bounds for items quantity
-
fastdivide
partial port of libdivide. It makes it possible to reduce the cost of divisions.
-
castaway
Safe, zero-cost downcasting for limited compile-time specialization
-
ptr_meta
A radioactive stabilization of the ptr_meta rfc
-
docify
allows you to live-embed at compile time pieces of code from throughout your project as rust doc examples
-
static_init
Safe mutable static and non const static initialization, and code execution at program startup/exit
-
enclose
A convenient macro, for cloning values into a closure
-
terrors
ergonomic and precise error handling built atop type-level set arithmetic
-
abi_stable
For doing Rust-to-Rust ffi,writing libraries loaded at program startup
-
failsafe
A circuit breaker implementation
-
fragile
wrapper types for sending non-send values to other threads
-
error_set
Quick error declarations and automatic conversions between errors for precisely typed error handling. Inspired by Zig's error set type.
-
buffered-reader
A super-powered Reader
-
safelog
Conditionally suppress confidential information from logs
-
comparable
comparing data structures in Rust, oriented toward testing
-
error-code
Error code
-
field-offset
Safe pointer-to-member implementation
-
async-fn-stream
Lightweight implementation of
async-streamwithout macros -
bilge
Use bitsized types as if they were a feature of rust
-
float-cmp
Floating point approximate comparison traits
-
cpubits
Compile-time detection heuristics for the optimal word size to use for the target CPU, which in some cases may differ from its address size a.k.a.
target_pointer_width. Implemented asmacro_rules! -
oxc-miette
Fancy diagnostic reporting library and protocol for us mere mortals who aren't compiler hackers
-
io-extras
File/socket handle/descriptor utilities
-
deno_error
Error representation to JavaScript for deno
-
tiny-fn
Type erased closures on stack
-
fallible-iterator
Fallible iterator traits
-
shape
A portable static type system for JSON-compatible data
-
index_vec
Newtype-style helpers for
Vecandusize -
egui-probe
Trait and derive macro for exposing value editing in egui
-
better_any
Type id and Any for non static types
-
debugless-unwrap
Unwrap Result<!Debug, !Debug> and Option<!Debug>
-
ref-cast
Safely cast &T to &U where the struct U contains a single field of type T
-
caret
Macros for declaring non-exhaustive C-style enumerations, with named members
-
outref
Out reference
-
try_match
Fallible pattern matching with a function-like syntax
-
fallible-streaming-iterator
Fallible streaming iteration
-
n0-error
ergonomic errors with call-site location
-
float-ord
A total ordering for floating-point numbers
-
dill
Runtime depenency injection library
-
concat-with
Extend the function of the
concat!macro instd -
masterror
Application error types and response mapping
-
reflectapi
code-first web service API declaration and corresponding clients code generation tools
-
unwrap-infallible
Unwrapping Result values with compile-time guarantee of infallibility
-
fatality
extension to
thiserror::Error -
psm
Portable Stack Manipulation: stack manipulation and introspection routines
-
strck
Checked owned and borrowed strings
-
lending-iterator
Fully general lending iterators in stable rust: windows_mut!
-
maplit
Collection “literal” macros for HashMap, HashSet, BTreeMap, and BTreeSet
-
creusot-contracts
contracts and logic helpers for Creusot
-
ra_ap_ide_assists
Code assists for rust-analyzer
-
mago-reporting
Structured error and diagnostic reporting utilities
-
retry
retrying operations that can fail
-
value-trait
Traits to deal with JSONesque values
-
orion-error
Struct Error for Large Project
-
formatx
A macro for formatting non literal strings at runtime
-
o2o
Object to Object mapper for Rust. Derive '(Try)From' and '(Try)Into' traits.
-
pusherator
Push-based version of Rust iterators
-
problem
Error handling for command line applications or prototypes
-
dprint-swc-ext
Functionality to make swc easier to work with
-
freecs
A high-performance, archetype-based Entity Component System (ECS) written in Rust
-
facet_generate
Generate Swift, Kotlin and TypeScript from types annotated with
#[derive(Facet)] -
static-keys
Reimplement Linux kernel static keys for Rust userland applications
-
n0-snafu
Utitilities for working with snafu
-
any_of
A general optional sum of product type which can be Neither, Left, Right or Both
-
fieldx
Procedural macro for constructing structs with lazily initialized fields, builder pattern, and serde support with a focus on declarative syntax
-
deriving_via
DerivingVia
-
kinded
Generate enums with same variants, but without data
-
parse-display
Procedural macro to implement Display and FromStr using common settings
-
documented
Derive and attribute macros for accessing your type's documentation at runtime
-
rust-fsm
A framework and a DSL for building finite state machines in Rust
-
docsplay
A derive macro for implementing the display Trait via a doc comment and string interpolation. Fork of displaydoc
-
iri_s
RDF data shapes implementation in Rust
-
maybe-owned
MaybeOwned(andMaybeOwnedMut) type similar to std’sCowbut it implementsFrom<T>andFrom<&'a T>and does not requireToOwned -
joinery
A small crate for generically joining iterators with a separator
-
shadow_counted
An iterator that counts every iteration in a hidden counter, nested iterators may commit the count to parents
-
panic-halt
Set panicking behavior to halt
-
lazyinit
Initialize a static value lazily
-
reborrow
Emulate reborrowing for user types
-
protest
An ergonomic, powerful, and feature-rich property testing library with minimal boilerplate
-
environmental
Set scope-limited values can can be accessed statically
-
tryhard
Easily retry futures
-
with_locals
Function attribute to return references to locals by using CPS
-
rdftk_names
set of modules that contain the
IRIs andQNamestrings for commonly used vocabularies. It also provides macro support for defining new namespaces in the same style as this library. -
awint_macro_internals
Internal macro utilities for the
awintsystem of crates -
lebe
Tiny, dead simple, high performance endianness conversions with a generic API
-
anyerror
A type of any error for transport
-
spark-signals
A standalone reactive signals library for Rust - fine-grained reactivity for any application
-
fluent-comparisons
Boost readability by writing multicomparison expressions like
if any_of!({a,b,c}>=5) {...}while keeping the benefits of hand-written code -
auto_enums
allow multiple return types by automatically generated enum
-
opentalk-types-signaling-automod
Signaling types for the OpenTalk automod module
-
lazy_errors
Effortlessly create, group, and nest arbitrary errors, and defer error handling ergonomically
-
orx-iterable
Defines and implements Iterable, Collection and CollectionMut traits to represent types that can be iterated over multiple times
-
implicit-clone
Immutable types and ImplicitClone trait similar to Copy
-
nunny
the definitive non-empty slice/array/vec library for Rust
-
sealed
Macro for sealing traits and structures
-
garnish_lang_traits
Shared traits for garnish core libraries
-
gofer
Gofer.rs makes it easy to fetch data from any URL
-
stillwater
Pragmatic effect composition and validation for Rust - pure core, imperative shell
-
hot_reload
Trait and service definition of periodic hot reloader and notifier for config-file, KVS, etc
-
anymap3
A safe and convenient store for one value of each type
-
fixnum
Fixed-point numbers with explicit rounding
-
prism3-function
Common functional programming type aliases for Rust, providing Java-style functional interfaces
-
thiserror-ext
Useful extension utilities for
thiserror -
pilgrimage
A Kafka-like message broker in Rust
-
directed
Evaluate programs based on Directed Acyclic Graphs
-
axum-conf
simplify the use of Axum, Tokio and Postgres together using configuration. It comes with batteries included and many features can be feature activated.
-
indoc
Indented document literals
-
ownable
Derive macro for structs/enums with Cow, which can convert Type<'a> to Type<'static> and more
-
k8s-openapi-codegen-common
Common code for the k8s-openapi code generator and k8s-openapi-derive
-
sdl3-main
Tools for using SDL's main and callback APIs
-
strong-type
Procedural macros for naming and strong-typing primitives and strings
-
cap-std-ext
Extension APIs for cap-std
-
genetic_algorithm
A genetic algorithm implementation
-
iced_anim
creating animations in Iced
-
enum-display
A macro to derive Display for enums
-
macro-asm-builder
macro-assemblers
-
aranya-capi-core
Aranya's C API tooling
-
rfluids
🦀 Rusty CoolProp wrapper
-
rancor
Scalable and efficient error handling without type composition
-
result-like
Option/Result-like monad interface for your own enum
-
rustica
functional programming library for the Rust language
-
better_scoped_tls
scoped-tls, but with good error message
-
axerrno
Generic error code representation
-
async-injector
Reactive dependency injection for Rust
-
base-traits
base traits (for Rust)
-
rudo-gc
A garbage-collected smart pointer with automatic cycle detection using BiBOP memory layout and Mark-Sweep collection
-
k8-client
Core Kubernetes metadata traits
-
autofolder
Single-element folding wrapper
-
fp-library
A functional programming library for Rust featuring your favourite higher-kinded types and type classes
-
mirai-annotations
Macros that provide source code annotations for MIRAI
-
reactive_stores
Stores for holding deeply-nested reactive state while maintaining fine-grained reactive tracking
-
exn
A context-aware concrete Error type built on
core::error::Error -
hlua
Zero-cost high-level wrapper for Lua
-
array-init-cursor
help keep track of arrays of MaybeUninit
-
bytes-str
A string type that is backed by bytes crate
-
shaku
Compile Time Dependency Injection for Rust
-
okapi
Structs for OpenAPI (AKA Swagger) documents
-
leo3
Rust bindings for the Lean4 theorem prover
-
patchable
Automatically derive patch types for Rust structs to enable efficient partial updates with zero runtime overhead
-
send_wrapper
implements a wrapper type called SendWrapper which allows you to move around non-Send types between threads, as long as you access the contained value only from within the original thread…
-
eventastic
opinionated fork of Eventually-rs. It enforces the use of transactions and handles idempotency.
-
soa_derive
Automatic Struct of Array generation
-
gerber-types
Types and code generation for Gerber files (RS-274X)
-
uniplate
boilerplate-free operations on tree-shaped data types
-
variadics
Variadic generics on stable Rust using tuple lists
-
ancpp
A C preprocessor implementation in Rust
-
exhaust
Trait and derive macro for working with all possible values of a type (exhaustive enumeration)
-
sabi-rust
A small framework to separate logics and data accesses for Rust application
-
fmodel-rust
Accelerate development of compositional, safe, and ergonomic applications/information systems by effectively implementing Event Sourcing and CQRS patterns in Rust
-
lazycell
providing a lazily filled Cell struct
-
octseq
Abstractions for types representing octet sequences
-
netcdf3
A pure Rust library for reading and writing NetCDF-3 files
-
oxur-smap
Source mapping for Oxur language - tracks code transformations for error reporting
-
istring
A replacement for String that allows storing short strings of length up to sizeof<String>() - 1 without a heap allocation
-
random-number
Generate random numbers quickly
-
human-errors
An error library focused on providing your users with relevant advice for any problem
-
dioxus-router
Cross-platform router for Dioxus apps
-
errs
handling errors with reasons
-
if_chain
Macro for writing nested
if letexpressions -
cel-cxx
A high-performance, type-safe Rust interface for Common Expression Language (CEL), build on top of cel-cpp with zero-cost FFI bindings via cxx
-
tpuf_zerovec_0115
Zero-copy vector backed by a byte array
-
safe-transmute
A safeguarded transmute() for Rust
-
belt
A fast, cross-platform Factorio benchmarking tool
-
better_collect
composable, declarative way to consume an iterator
-
oxrdf
Basic data structures related to RDF
-
foras
First-Order Reasoner which uses the principles of predicate logic to derive new facts, verify statements, and prove theorems from an existing knowledge base
-
eros
Error handling that is precise, no boilerplate, ergonomic, context aware, and performant
-
termite-dmg
Termite Data Model Generator is a crate meant to generate boiler plate code for data models
-
typesense
Client for typesense
-
taurpc
A type-safe IPC layer for tauri commands
-
lucene_query_builder
A procmacro derive crate to generate lucene query builder for Rust structs :
-
resman
Runtime managed resource borrowing
-
tyrx
Typed, ergonomic regular expression library
-
sugars
An useful collection of macros to make tasks easier
-
thiserror-no-std
derive(Error)
-
ranged_integers
An integer restricted to a compile-time defined bounds driven by const generics
-
rc-box
Known unique versions of Rc and Arc
-
overload
macro to simplify operator overloading
-
condtype
Choose types at compile-time via boolean constants
-
core_maths
Extension trait for full float functionality in
#[no_std]backed bylibm -
derive_generic_visitor
Boilerplate for building rust visitors
-
cascade
Dart-like cascade macro for Rust
-
moddef
Macro for convenient module declaration. Each module can be put in a group, and visibility can be applied to the whole group with ease.
-
lazy_format
lazily formatting values for later
-
nonzero_ext
Extensions and additional traits for non-zero integer types
-
borrow
Zero-overhead, safe implementation of partial borrows. This crate allows you to borrow selected fields from a struct and split structs into non-overlapping sets of borrowed fields.
-
async-recursion
Recursion for async functions
-
lowdash
A Lodash inspired utility library to manipulate array and object for Rust
-
cynic-codegen
Procedural macro code generation for cynic - a code first GraphQL client for Rust
-
cluFullTransmute
Extended, no-constraint type transmutation API, featuring safe checks and const-ready logic
-
dtype_dispatch
Macro builder for working with data types
-
eio-okta-data
Data Types for Okta
-
anyhow_serde
Flexible concrete Error type built on std::error::Error with serde support
-
datafusion-comet-spark-expr
DataFusion expressions that emulate Apache Spark's behavior
-
fix-hidden-lifetime-bug
Proc-macro to write an automatic fix for the "hidden lifetime in impl Trait" issue
-
wallee
Flexible concrete Error type built on std::error::Error with caller location tracking
-
andex
Safe, strongly typed array indexes and wrappers for rust with zero dependencies
-
retry-error
An error type for an operation that can fail more than once
-
dtype_variant
Enables type-safe enum variants with shared type tokens across multiple enums, allowing for synchronized variant types and powerful downcasting capabilities between related enums
-
as_variant
macro to convert enums with newtype variants to
Options -
metered
Fast, ergonomic metrics for Rust!
-
problemo
Problemo
-
tartan-bitfield
Define structures with accessors for particular bits or bit ranges
-
hodgepodge
Lightweight dataset crate of enums for prototyping, teaching, and experimentation
-
dupe
Marker for types which are cheap to clone
-
impl-more
Concise, declarative trait implementation macros
-
jemmy
This package provides a coherent set of manual accessor macros
-
gaia-types
盖亚类型
-
tlq-fhirpath
FHIRPath engine
-
chasa
A parser combinator focused on rollback/commit, streaming inputs, and composable method chains
-
handle-this
Ergonomic error handling with try/catch/throw/inspect/finally syntax and automatic stack traces
-
collection_literals
macros for initializing any collection
-
ownedbytes
Expose data as static slice
-
err_trail
Add context to errors through logging
-
hypen-parser
Hypen DSL parser using Chumsky
-
facet-solver
Constraint solver for facet - resolves type shapes from field names
-
valq
macros for querying semi-structured data with the JavaScript-like syntax
-
oxilangtag
fast implementation of language tag normalization and validation
-
fn-ptr
introspecting and rewriting function pointer types at compile time
-
one_err
OneErr to rule them all
-
optional_struct
defining a macro that will generate, from a structure, another structure with only Option<T> fields
-
validated
The cumulative sibling of
ResultandEither -
v-storage
Storage layer for the veda platform
-
clone-macro
Super simple utility macro for cloning before moving into a move closure/block
-
smarterr
Smart error handling library
-
utoipa-axum
Utoipa's axum bindings for seamless integration for the two
-
crustal
generating C/C++ code
-
loupe
Profiling tool for Rust
-
fixed-hash
Macros to define custom fixed-size hash types
-
protocol
Easy protocol definitions
-
qualifier_attr
Procedural macro attributes for adding "qualifiers" (pub, async, unsafe, const, extern "C", ...) to various items
-
ointers
What do you call a pointer we stole the high bits off? An ointer
-
uni_error
universal error type for Rust
-
inplace_containers
In-place, fixed-capacity containers with optional features
-
gerber_viewer
A cargo crate for rendering Gerber files
-
str-macro
The str!() macro, similar to vec![] but for strings
-
plux-rs
A modular and performant plugin system for Rust applications, enabling secure and stable extension of functionality through external plugins
-
codama-nodes
Node specifications and helpers for the Codama standard
-
myutil
Rust Util Collections
-
tola-caps
Capability system enabling type-level state tracking, trait detection, and stable specialization
-
borrow-or-share
Traits for either borrowing or sharing data
-
bigerror
handle big errors ¯\_(ツ)_/¯
-
runtara-dsl
DSL for agent metadata definitions in runtara workflows
-
salsa-macro-rules
Declarative macros for the salsa crate
-
fauxgen
write your own generators in stable rust
-
valico
JSON Schema validator and JSON coercer
-
resiter
Helper crate for handling iterators over result
-
frunk_proc_macro_helpers
Common internal functions for frunk's proc macros
-
turul-mcp-json-rpc-server
Pure JSON-RPC 2.0 server implementation with type-safe domain/protocol separation
-
expunge
redact and transform struct fields declaratively
-
cast_trait_object
Cast between trait objects using only safe Rust
-
reaktiv
A standalone, flexible fine-grained reactivity library
-
ungrammar
A DSL for describing concrete syntax trees
-
helios-fhirpath-support
serves as a bridge module that provides essential types and traits for integration between the FHIRPath evaluator, it's associated functions, and also the FHIR model code in the fhir module…
-
standout-seeker
Generic query engine for filtering Rust struct collections
-
tinyvec_macros
Some macros for tiny containers
-
orx-meta
Meta structures such as statically typed queues of heterogeneous elements
-
anyinput
A macro for easier writing of functions that accept any string-, path-, iterator-, array-, or ndarray-like input
-
meticulous
Result extension to add more meaning to unwrapping
-
components-arena
creating complex domain-specific self-referential data structures
-
renege
Tracking cache validity using fast concurrent invalidation propogation
-
swamp
script language for embedding
-
approxim
Approximate floating point equality comparisons and assertions
-
rustversion
Conditional compilation according to rustc compiler version
-
peeking_take_while
Like
Iterator::take_while, but calls the predicate on a peeked value. This allows you to useIterator::by_refandIterator::take_whiletogether, and still get the first value… -
current
setting current values for stack scope, such as application structure
-
atlas-program-log
Lightweight log utility for Atlas programs
-
mydi
MyDI. Dependency Injection library
-
valitron
ergonomics, functional and configurable validator
-
direction
Representations of directions
-
dynamic-plugin
Write compile-time-checked, dynamically-loaded plugin libraries for your Rust software
-
uy
A typesafe, flexible, simple, and user-friendly unit system library for Rust that has good error messages
-
emboss
Macros to embed metadata as an ELF/Mach-O section in your final binary
-
derive-io
derive macros for
std::io::{Read,Write},tokio::io::{AsyncRead,AsyncWrite}and more -
compile_time_sort
Sort arrays and slices of primitives in const contexts
-
neuer-error
Ergonomic error handling for machines and humans
-
willow-data-model
The core datatypes of Willow, an eventually consistent data store with improved distributed deletion
-
overture-core
overture library
-
pretty-error-debug
If the process ends with an
Error, write out theErrormessage and chain -
typesafe_builder
A procedural macro to generate type-safe builder patterns for Rust structs
-
metastruct
Abstractions for iterating and mapping over struct fields
-
pin-utils
pinning
-
yerevan
Small Rust crate that brings computation expressions idea from F# for help you to work easier with functors and monads
-
sumtype
Generate zerocost sumtype of iterators or closures
-
boolean-enums
Generate enums with Yes and No variants. Supports no_std and serde.
-
error2
error handle library for Rust
-
dispose
wrapper for values that must be consumed on drop
-
capacity_builder
Builders where the code to calculate the capacity is the same as the code to write what's being built
-
leptos-mview
A concise view macro for Leptos
-
inline-python
Inline Python code directly in your Rust code
-
spire_enum
Procedural macros to facilitate enum usage, such as when delegating implementations, extracting variant types, or creating enum tables
-
redb_model
Redb model derive macro and DTO type conversion
-
racer
Code completion for Rust
-
cryptify
A procedural macro library to obfuscate Rust code. Provides compile-time string encryption and random flow obfuscation.
-
wherror
The same derive(Error) macro thiserror provides + the features you want!
-
cexpr
A C expression parser and evaluator
-
float8
8-bit floating point types for Rust
-
error-rail
ErrorRail is a no_std compatible Error Handling library for the Rust language
-
zoet
Adds
#[zoet]macro to reduce boilerplate when implementing common traits -
autofloat
Pure Rust library for efficient automatic differentiation
-
chaos_theory
Modern property-based testing and structure-aware fuzzing library
-
miniffi
but opinionated FFI system
-
inline-c
Write and execute C code inside Rust
-
intern-arc
An interner that deallocates unused values
-
model-mapper
Derive macro to map between different types
-
std-next
Opinionated utilities and polyfills
-
sc
Raw system calls
-
figura
A flexible string template formatting crate
-
mlua-extras
Extra helpers and functionality built on top of mlua for embedded lua development
-
linear_type
Unique linear types for rust
-
errgonomic
Macros for ergonomic error handling with thiserror
-
culpa
error-handling syntax in Rust
-
ferrous-di
Type-safe, performant dependency injection for Rust, inspired by Microsoft.Extensions.DependencyInjection
-
hax-frontend-exporter
mirrors of the algebraic data types used in the Rust compilers, removing indirections and inlining various pieces of information
-
rspack_napi
rspack napi
-
timely_bytes
Disjoint mutable byte slices from a common allocation
-
flex-error
Flexible error definitions using macros and traits
-
stackerror
A pragmatic error handling library for Rust that provides helpful strings for debugging, and structured data for runtime error handling
-
statum
Compile-time state machine magic for Rust: Zero-boilerplate typestate patterns with automatic transition validation
-
ra-ap-rustc_type_ir
Automatically published version of the package
rustc_type_irin the rust-lang/rust repository from commit 878374e07f3bf038c96e94e5bc917471878e4bf6 The publishing script for this crate lives at:… -
state-machines
Type-safe state machines with hierarchical states, guards, callbacks, and async support - Rust port of Ruby's state_machines gem
-
const_soft_float
Const Soft Float Point
-
processmanager
manage process lifecycles, graceful shutdown and process faults
-
rustfix
Automatically apply the suggestions made by rustc
-
assume
Macro for stating unsafe assumptions in Rust
-
blanket
macro to derive blanket implementations for your traits
-
compactly
encode data types using adaptive arithmetic coding
-
notmad
life-cycle manager for long running rust operations
-
apt-pkg-native
Bindings for libapt-pkg
-
err_tools
Helper traits and functions for building errors in rust
-
sparkles
Capture execution flow of your Rust application with CPU cycle precision!
-
enum-assoc
Procedural macro to associate constants with enum variants
-
seal-the-deal
Attribute to use on the
traitmethods (or associated functions) that you wish to “seal”, a.k.a., render themfinal -
superstruct
Versioned data types with minimal boilerplate
-
scadman
Code generator for OpenSCAD
-
signaled
A lightweight reactive programming library for Rust, providing a signal-slot mechanism
-
ferment
Traits for FFI conversions and some helper methods
-
corroded-rs
that bypasses Rust's safety features
-
iter-comprehensions
iterator comprehensions
-
dioxus-config-macros
Macros used internally by codegen
-
case_insensitive_string
A case insensitive string struct
-
file_rw
high-performance, memory-mapped file I/O utilities
-
nonbox
NaN boxing without boxing
-
pingora-error
Error types and error handling APIs for Pingora
-
generic-container
Abstract over "containers" that hold a T, such as a T itself, Box<T>, or Arc<Mutex<T>>
-
match_opt
A macro for turning a partial match into a full match returning an option
-
quoth
scannerless (no-lexing), developer-friendly parsing library for implementing DSLs and syntax parsers in Rust
-
wrapper-lite
Helper macro for creating a wrapper over any type (new-type idiom)
-
doku
A framework for documenting Rust data structures
-
defer
excecution of code, inspired by go's defer statement
-
for_build_rs
lexer for Rust's build.rs
-
describer
Struct describing helper
-
typed-arrow
Compile-time Arrow schemas for Rust
-
dync
An efficient alternative to
dyn Traitfor containerized types -
pi_null
define trait is named Null. u8,u32,u64,Option...is implements Null
-
makers
a POSIX-compatible make implemented in Rust
-
ref_iter
Dynamic borrowing iterator
-
arr_macro
Initialize arrays with ease!
-
contained
works to provide several macros and interface for transparent wrapper types in Rust
-
join_me_maybe
an async
join!macro withselect!-like features -
tighterror
A minimalistic error representation framework
-
log_limit
A rate limiting logging crate
-
assert-eq-float
assert_eq_float!macros that support floats -
thiserror-core
derive(Error)
-
rust_info
Extracts the current rust compiler information
-
spacetimedb-primitives
Primitives such as TableId and ColumnIndexAttribute
-
zed
A minimal, Redux-like state management library for Rust with advanced features
-
placid
Separated ownership and in-place construction in Rust
-
orx-closure
An explicit closure with absolute separation of the captured data from the function
-
explicit-error
Explicit concrete Error type for binary crates
-
cfg-elif
Formatter-friendly conditional compilation at item and expression positions
-
cadd
Painless checked arithmetics and conversions
-
extend
Create extensions for types you don't own with extension traits but without the boilerplate
-
miden-miette
Fancy diagnostic reporting library and protocol for us mere mortals who aren't compiler hackers
-
kompost
easen functional programming in rust by facilitating the creating composition of Iterator methods and anonymous Iterators—all without writing any trait or struct, without macros or unsafe code
-
gstuff
Small macro and trinkets that make my life easier
-
enums
Enumerate trait for vector and slice in rust. It abstracts chain methods like .iter().enumerate().collect() into a clean, reusable method also called enums like python enumerate.
-
tools-rs
Core functionality for the tools-rs tool collection system
-
tuple
Element-wise operations on tuples
-
bizerror
standardized approach for defining and managing business-related errors
-
command-error
Detailed error messages and status checking for
std::process::Command -
powerletters
Concise spellings of common Rust operations
-
version-sync
ensuring that version numbers in README files and other files are kept in sync with the crate version
-
relative-duration
Duration with negative capabilities
-
socketpair
Cross-platform socketpair functionality
-
entrait
Loosely coupled Rust application design made easy
-
multiple_errors
Propagate multiple errors instead of just the first one
-
variant_count
Derive macro for enum which adds to it the count of variants
-
eggplant
High-Level Rust API crate for Egglog
-
atoman
static data that can be accessed safely and concurrently from any part of your program
-
cfg-iif
A macro for defining
#[cfg]if-elsefunctions -
context_error
create rich errors to help users understand what the error was and how to fix it
-
spade-types
Helper crate for https://spade-lang.org/
-
conflate
Merge multiple values into one
-
cli_utils_hoijui
A tiny CLI utilities library, providing functions and constants useful in many CLI tools
-
derive_aliases
#[derive]aliases for reducing code boilerplate -
matched_enums
A macro that provides the option to bin enum attribute to match-statements. This makes it easier to convert values into enums.
-
prima_bridge
implement the bridge pattern
-
nixl-sys
Low-level bindings to the nixl library
-
yule_log
A streaming parser for PX4 ULOG files
-
anystack
Flexible and comprehensive error handling
-
smox
Box that stores small objects inline and bigger objects on the heap using Box, Rc or Arc, with CoW semantic
-
similarity-trait
Similarity trait Rust crate: compare input values, such as two or more items, then return an output value, such as a mesure of similarity, or correlation, or overlap
-
codespan_preprocessed
Beautiful diagnostic reporting for M4 (or cpp) preprocessed text files
-
loga
Combined logging and error handling
-
tldr-traits
Abstractions for TL;DR summarization using the five Ws: who? what? when? where? why?
-
eira
Ansi-colored error reporting output
-
spacetimedsl
Ergonomic DSL for SpacetimeDB
-
errors
std::error::Error utilities
-
bits-io
Bit-level IO operations
-
sosecrets-rs
Secretwrapper type that reveals the secret at mostMEC: typenum::Unsignedtimes with compile time guarantees -
error-envelope
Structured, consistent error responses for Rust APIs. Framework-agnostic with Axum support.
-
portrait
Fills an
implwith the associated items required by the trait -
rust-memory-safety-examples
Comprehensive educational examples demonstrating memory-safe programming patterns with CVE case studies and benchmarks
-
newstr
macros for declaring String-base new types
-
trait-cast
Get your own Any with support for casting to trait objects
-
condition-matcher
A flexible and type-safe condition matching library with automatic struct field access
-
rust-texas
generate latex documents
-
dynify
Add dyn compatible variant to your async trait
-
underscore_args
Macro for underscore named argument syntax, aka Dyon
-
witnesscalc-adapter
run witnesscalc in rust
-
rudi-dev
Rudi - an out-of-the-box dependency injection framework for Rust
-
tstr
type-level strings on stable
-
buildstructor
Macro to derive a builder from a constructor function
-
code-gen
aids in code generation
-
hoicko_lib
Hoicko library
-
sanitizers
Interfaces and FFI bindings for the sanitizers interfaces
-
prudent
Help you make Rust code safer. For both authors and reviewers.
-
kyomu
Allows recursive reflection of types, mapping runtime values to that recursive struct and constructing objects generically
-
clone_cell
A Cell that works with a restrictive form of Clone
-
axum-openapi3
Facilitate the generation of OpenAPI 3.0 documentation for axum applications
-
tokenlock
cell types that decouple permissions from data
-
array_trait
A generic trait for any array, with item as type and length as const parameter
-
moveit
safe, in-place construction of Rust (and C++!) objects
-
TSPL
The Simplest Parser Library
-
data-rw
io buffer write reader
-
precomputed-hash
intending to be a base dependency to expose a precomputed hash
-
frunk_utils
working with frunk
-
metrique-writer
working with unit of work metrics - writer-side interface
-
opentalk-kustos-prefix
Derive macro for defining kustos prefix
-
agb_fixnum
abstracting over fixed precision numbers. Designed for use with the agb library for the Game Boy Advance
-
measures-rs
macro to generate a library to statically encapsulate numbers in objects having a unit of measurement, allowing any meaningful operation, but statically forbidding meaningless operations with them…
-
crossfig
compile-time feature aliases and introspection
-
iter_num_tools
Create simple iterators over non integer ranges. itertools + num = iter_num_tools
-
luhtwin
A beta horrible Rust error handling library with AnyError and context macros
-
eventql-parser
EventQL Lexer and Parser
-
fp_rust
Implement fp features for Rust
-
repl-core
Core REPL engine for the Symbi platform
-
traitsequence
Traits to abstract over sequences
-
bignumbe-rs
Large, medium-precision numbers
-
phantom-type
A
PhantomDataanalog which prevents “parameter is never used” error, but does not produce any restrictions in contrast withPhantomData -
lighty-event
Event system for LightyLauncher
-
builder-pattern
A derivable macro for declaring a builder pattern
-
numdiff
Numerical differentiation via forward-mode automatic differentiation and finite difference approximations
-
evcxr_repl
A REPL for Rust
-
per-thread-object
Efficient per-object thread-local storage implementation
-
type_reflect
Extensible runtime reflection through a Derive macro
-
subplotlib
functions and types for
subplot codegengenerated Rust based test suites. Relies onsubplotlib-derivefor associated macros. -
quither
A flexible enum-based utility for representing values that may be on the left, right, neither, or both sides
-
variadics_please
Implement things as if rust had variadics
-
hexga_number
Provide basic trait and constant for number, and the macro map_on!
-
graphql-starter
GraphQL starter kit
-
pipe-trait
possible to chain regular functions
-
linked_list_r4l
Linked lists that supports arbitrary removal in constant time
-
wry-bindgen
Native desktop implementation of wasm-bindgen APIs using wry
-
bounded-static
Defines the ToBoundedStatic and IntoBoundedStatic traits
-
copyless
Ways to eliminate memcpy calls when using the standard library
-
nnn
Generate your newtypes from a single macro
-
dragonfly-plugin
Dragonfly gRPC plugin SDK for Rust
-
mownstr
Maybe Owned String
-
tiff-forge
working with TIFF and BigTIFF files
-
hex_lit
Hex macro literals without use of hex macros
-
lunka
Pretty thin bindings to Lua 5.4
-
deep_causality_haft
HKT traits for for the deep_causality crate
-
virtue-next
A sinless derive macro helper
-
cve-rs
Blazingly fast memory vulnerabilities, written in 100% safe Rust
-
fast-uuid-v7
A high-performance Rust library for generating UUID v7 compatible identifiers
-
tuplex
Rust tuple extension
-
edgee-sdk
The full-stack edge platform for your edge oriented applications
-
pretty-name
Get the human-friendly name of types, functions, methods, fields, and enum variants in a refactoring-safe way
-
directed-visit
Visitor pattern with interchangable implementations for both the visit algorithm and node object traversal
-
mightrix
treat continous memory as a matrix
-
plectrum
An easy way to represent lookup tables in a db as rust enums
-
typed-measurements
handling physical measurements with units
-
cast_checks
A procedural macro to check for invalid casts
-
pud
Generate typed, composable, no-std-friendly modifications (“puds”) for Rust structs
-
sod
Service Oriented Design
-
void
The uninhabited void type for use in statically impossible cases
-
pyderive
Derive macro of Python special methods and a class attributes for PyO3
-
optics
A no_std-compatible optics library providing composable lenses, prisms, isomorphisms, and fallible isomorphisms
-
either_of
working with enumerated types that contain one of 2..n other types
-
nutype-enum
Helper macro to create a nutype that behaves like an enum
-
morphix
Observing and serializing mutations
-
batched
rust macro util for batching expensive operations
-
once-list2
A single linked list which is backed by
OnceCell. You can append the value to the non-mutableOnceList. -
rs-bean
A lightweight Rust library for bean management
-
munge
Macro for custom destructuring
-
bhc-types
Type system, type inference, and type representations for BHC
-
value-traits
By-value slices and iterators
-
rusttyc
writing type checkers with a lattice-like type system in rust
-
drop_bomb
A runtime guard for implementing linear types
-
as-is
An abstraction over ownership
-
function-compose
function composition library for rust
-
mall-portrait-common
Common utilities and types for mall portrait projects
-
enum_ext
procedural macro that enhances enums with additional methods and conversions
-
fmu_from_struct
A derive macro for automatically setting up FMU models in Rust
-
fluent_result
Fluent postfix helpers for Rust's Result and Option types
-
nanokit
A collection of tiny, reusable utility methods that reduce code size and improve performance
-
unipipe
pipe abstraction that extends to iterator and stream
-
custom_error
Define custom errors without boilerplate using the custom_error! macro
-
take-until
A take_until extension for iterators
-
tlns-google-oauth2
An enshitificated Google OAuth2 Server Side support for Rust with built in Scopes enum
-
persisted
Persist arbitrary program state quickly and easily
-
alloc-checked
Collections that don't panic on alloc failures
-
bint
Bounded Integer in Rust
-
elain
Set a type's minimum alignment with const generics
-
doless
macro to simplify struct mapping , injects cache lookup logic directly into your functions ,and function utilities
-
fx-callback
A subscription based callback to inform subscribers about relevant data events within structs
-
indices
macros and methods for safely retrieving multiple mutable elements from a mutable slice, addressing scenarios where slice elements would typically require
RefCellorCell(interior mutability approach) -
duration-extender
Adds fluent, highly readable methods (like .minutes(), .hours()) directly to integer types (u32, i64, etc.) to easily create std::time::Duration
-
macon
builder macro-based generator with its own idioms
-
hax-frontend-exporter-options
The options the
hax-frontend-exportercrate is sensible to -
hlist2
Compile-time heterogeneous list implementation
-
radicle-std-ext
Monkey patches of std types
-
cudd-sys
Bindings for CU Decision Diagram library (CUDD)
-
execution-time
way to measure and display the execution time
-
syn-locator
A source code locator for syn crate
-
flat_error
Error wrapper to ensure Clone, Debug, and PartialEq
-
sigma-compiler
automatically generating code for sigma zero-knowledge proof protocols of more complex statements than are supported by the sigma-proofs crate. The statements given to this crate are…
-
errorstash
collecting multiple related errors, and reporting them together
-
ffi_helpers
help make working with FFI easier
-
pareg
useful tools for command line argument parsing
-
cronus_parser
The DSL parser for cronus API spec
-
named-generics-bundle
Convenience macros to help with the "bundle multiple generic params with a helper trait" pattern
-
isclose
A collection of trait and macros for comparing approximate equality
-
pipeline-dsl
Pipeline DSL types and re-exports of #[pipeline]/#[stage]
-
macron
Comprehensive Rust macros toolkit for everyday development tasks. Includes convenient string formatting (str!), regex pattern matching (re!), streamlined collection creation, and custom derive macros for Display…
-
structural-typing
Type-level field presence tracking for Rust structs, inspired by TypeScript
-
symposium-crate-sources-proxy
ACP proxy component providing Rust crate source code research tools
-
generic-bytes
A derivable trait for conversion to and from an array of bytes with a type-level size
-
bobcat-panic
Bobcat utilities with a panic handler on Arbitrum Stylus
-
rong_buffer
Buffer module for RongJS
-
once_cell_no_std
Sync single assignment cells for
no_std -
baxe
that simplifies error handling in Axum
-
ref-map
Helper trait for Option and Result to map references
-
re_tuid
128-bit Time-based Unique Identifier
-
enum-update
representing state changes as enums
-
rs_ervice
service manager for vanilla or Tokio runtime
-
iterextd
This trait provides additional methods for working with iterators, enhancing their functionality
-
avila-error
AVL Platform error handling - replacement for anyhow/thiserror
-
okerr
Ergonomic result / error handling helpers built on anyhow and thiserror
-
certain-map
A typed map which can make sure item exist
-
protoschema
📐 Programmatically define protobuf contracts using flexible, modular and reusable elements
-
devela
A cohesive development layer
-
localtrace
A local tracing library for Rust
-
aprox_eq
determining aproximate equality between floating point types and deriving this capability to structs comprised of floating point numbers and other implementers of
AproxEq -
string_more
Extension traits for
Stringand&strtypes -
sovran-typemap
A thread-safe heterogeneous container with type-safety
-
traitreg
Create a registry of implementations of a trait
-
unwrap_or_ai
providing AI-powered error handling using procedural macros
-
elicit
SmartPointer-like structure for polymorphism
-
allow
Alias/label lints (to disable) with your intentions. Reexported from allow_prefixed, grouped under rustc::, clippy:: and rustdoc:: modules.
-
quad-url
Plugin for macro-, mini-quad (quads) to do anything with url
-
pgde
A macro library for consuming PostgreSQL row data into structs
-
nject
Zero cost dependency injection module
-
gpui_refineable
A macro for creating 'refinement' types that can be used to partially initialize or mutate a complex struct
-
reda-unit
physical units
-
rkyv_codec
Some adaptors to stream rkyv Archives over AsyncRead and AsyncWrite
-
resext
lightweight error handling crate for Rust
-
swamp-vm-isa
isa types for the Swamp VM
-
rialo-aggregators-utils
Rialo Aggregators Utils
-
env_cfg
derive macro library for loading configuration structs from ENV variables
-
enumeration
An extension to rust enum
-
accessorise
Add accessors to your struct and trait implementations
-
facet-miette
Derive miette::Diagnostic for facet types - rich error reporting with source spans
-
alkahest
Fantastic serialization library with zero-overhead serialization and zero-copy deserialization
-
pattern-wishcast
Pattern types emulation for conditional variants using conditional never types
-
impls
Determine if a type implements a logical trait expression
-
semigroup
Useful semigroup trait
-
dizzy
Macros for safely interacting with DST newtypes
-
env-flags
A convenience macro for declaring environment variables
-
rutie
The tie between Ruby and Rust
-
plist-macro
Macros and utilities for manipulating plists
-
zerust
Zero-cost Zinx for Rust
-
error-accumulator
easier for developers to write input validation
-
gqb
GQL Query Builder API
-
SCLP
Command Line Parser Built with Rust
-
rustfmt-nightly
find and fix Rust formatting issues
-
tracerr
Custom compile-time captured error tracing
-
cfg_rust_features
Set cfg options according to probing for Rust compiler, language, and library features
-
easy_node
Smart pointer for graph nodes
-
seasick
Tools for implementing and transcribing C APIs
-
advanced-pid
An advanced PID control library implemented in Rust
-
cloneable_errors
similar to anyhow, that allows the errors to be cloned, shared, cached and even sent over the network
-
surreal_devl
Contains core logic of surreal derive
-
cdumay_core
standard code
-
linux-errnos
A list of error numbers
-
dcc-lsystem
Lindenmayer system together with some rendering tools
-
medi-rs
mediator library for Rust
-
easy-error
error utilities
-
sfo-result
Result type for Rust
-
small_type_id
generation constant 32 bit nonzero unique identifiers for types
-
quickfig
Replace boilerplate in apps that read from user configuration files
-
throw_error
wrapping, throwing, and catching errors
-
handled
error handling library
-
display-error-chain
Formats a standard error and its sources
-
tan
language
-
handle_trait
A trait for types that represent handles to shared resources
-
cast
Ergonomic, checked cast functions for primitive types
-
svi
A function to interpolate variables in a hashmap into a format string
-
preprocess
Preprocesses a struct with built-in preprocessors
-
zerror
error interface for context-aware error-reporting
-
delegation
Macro-based delegation for enums and structs
-
shive
lightweight IOC service container writen for the Rust applications
-
tray-controls
An enhanced menu management tool designed for the tray-icon library
-
ros_msgs_include
Build script macro for including ROS 2 message types generated by rosidl_generator_rs via the AMENT_PREFIX_PATH
-
dyn-hash
Hash trait that is dyn-compatible
-
specmc-protocol
parsing Minecraft protocol specification
-
no_drop
wrapper type that guards against a value being automatically dropped
-
deterministic_default_hasher
A deterministic initialisation of the stdlib default hasher
-
erdp
display an error and its nested errors
-
nu-std
The standard library of Nushell
-
trait_mux
Proc macro library for generating enums that can multiplex different trait objects
-
luminos-container
Luminos Container
-
derive_destructure2
Destructure structs that implement Drop
-
lithium
Lightweight exceptions
-
rsgenetic
providing genetic algorithm execution
-
traversable
Visitor Pattern over Traversable data structures
-
finum
A numeric type of variable length (20 decimal digits)
-
conerror
macro that automatically adds context to errors
-
anymore
AnyDebug: Dynamically typed values which can be inspected
-
structz
Anonymous struct implementation in rust
-
concat-idents
Allows concatenating multiple identifiers and using them everywhere
-
to-query-params
A procedural macro and trait for easy use of arbitrary structs as query parameters in Hyper
-
hexga
include all other console hexga crate in one !
-
despatma
Design Pattern Macro like Loki
-
heterob
conversion between bytes/bits and heterogeneous lists (tuples)
-
rc-borrow
Borrowed forms of Rc and Arc
-
bounded-vector
Vec wrapper that guarantees upper and lower bounds on type level
-
store_by_enum
Type-safe data stores addressed and accessed using enums (in any order)
-
graphile_worker_ctx
Worker Context package for graphile_worker, a high performance Rust/PostgreSQL job queue
-
key-paths-core
Keypaths, ReadableKeyPath, WritableKeyPath and EnumKeypath for struct and enums in Rust
-
shards
rust bindings and utility in order to use shards
-
pared
Projected reference counted pointers
-
bhc-span
Source location tracking and span management for BHC
-
dyson_boot
Dyson Quick Startup Crate
-
ltk_primitives
Primitive types and helpers for League Toolkit
-
indexed_valued_enums
Create enums resolving into values, and get their variants back through their values, their discriminant or their name; inspired by Java
-
easy-ext
A lightweight attribute macro for easily writing extension trait pattern
-
luau-parser
A blazingly fast Luau parser with robust error recovery
-
grit-data-prison
providing the struct Prison<T>, a Generational Arena that allows full interior mutability to each and every element
-
tor-error
unified type-erased error type returned by many (esp. high-level) Tor APIs.
-
notizia
Frictionless message passing for the Tokio runtime
-
deref
dereferencing types
-
std_io_iterators
An iterator for
STDINand a wrapper forSTDOUT. Allows easy piping, and graceful closing of application if pipe breaks -
rama-error
error types and utilities for rama
-
command-macros
Macros for creating std::process::Command with shell-like syntax
-
ezinit
Initialize structs with a generated new() function based on modifiable rules
-
decycle
Solve circular trait obligation
-
teloxide-plugins
Smart plugin system for Teloxide bots
-
cell_wrappers
set of macros for ergonomically working with TCells and TLCells from the qcell crate
-
mago-type-syntax
core utilities useful for building lexers and parsers within Mago
-
typed_tuple
Type-safe access, isolation and mutation of primitive tuple segments and elements
-
emixcollections
Collection utilities including generic range types with iteration, clamping, and overlap detection
-
raws-error
RAWS common error type
-
rust-kzg-bn254-primitives
offers a set of structs, traits and functions for generating Blobs and Polynomials which are used to interact with rust-kzg-bn254-prover and rust-kzg-bn254-verifier crates
-
arbitrary_with
Adapters for
#[arbitrary(with = ...)] -
cdumay_error
define standard errors
-
fundle
Compile-time safe dependency injection for Rust
-
pyo3-error
Unified error causality chains across Rust and Python
-
duplicate_macrotest
Fork of the macrotest crate specifically to test the duplicate crate
-
string-utility
substring implementation (with the RangeBound trait), keep string before or after a specified string, etc
-
sync_select
A short-circuiting
std::thread::scope -
marlin-verilog-macro-builder
🦀 No nonsense hardware testing in Rust 🛠️
-
type-state-builder
Type-state builder pattern derive macro with compile-time safety and enhanced ergonomics
-
glam-traits
Traits for the vectors in glam
-
visibility
Attribute to override the visibility of items (useful in conjunction with cfg_attr)
-
rust-i18n-derive
derive macro for internationalization (i18n) support
-
jacklog
Easy way to get logging the way Jack always wants anyway
-
bitflag
A macro to generate bitflags structures from C-like enums
-
early_returns
Macros to make early returns easier to work with in Rust
-
cocoon-tpm-utils-common
Cocoon TPM project - common utilities
-
parametrized
Supply useful iterating methods for user-defined types which are parametrized by type parameters
-
pwn_arena
A minimal no_std, no_alloc arena allocator with garbage collection
-
woah
A Result type that differentiates between local errors (which can be handled) and fatal errors (which cannot)
-
c8str
String types that are both utf-8 and null terminated
-
forgeconf
Declarative configuration loader for Rust structs powered by attribute macros
-
conv2
number of conversion traits with more specific semantics than those provided by 'as' or 'From'/'Into'
-
prism3-core
Foundational utilities and language-level tools for Rust application development
-
utilities_rs
A small library of Rust utilities
-
beetle-nonzero
Combines the std
NonZerostructs into one struct -
arr_ty
Macros for smart array initialization
-
ktest
A custom test framework for Rust-based operating system kernels
-
sadi
Semi-Automatic Dependency Injector
-
zip_clone
Zip an iterator to a repeatedly cloned object
-
wiremock-grpc
Mock gRPC server to test your outgoing gRPC requests
-
is_slice
Macro to answer the question: is it a slice?
-
psl-types
Common types for the public suffix implementation crates
-
axum-error-handler
error handler for axum
-
try_create
A small library providing generic traits for fallible and infallible object creation
-
async-retry
Async Retry
-
default-constructor
Macros for creating pseudo-dsls that constructs structs through default construction and field conversion
-
mono-changeset
Mono repository changeset utilities
-
nonany
Integer types with customizable niche values
-
revolt-result
Revolt Backend: Result and Error types
-
recovery
Trait and derive macros to declare how errors should be retried
-
try-specialize
Zero-cost specialization in generic context on stable Rust
-
truc_runtime
Rust code generator for safe, fixed size, evolving records - runtime
-
sw-errors
error parsing and pretty-printing, used across the swtools toolset
-
stringleton
Extremely fast string interning library
-
u16cstr
A macro for creating c-style u16 wide strings at compile time
-
kti_cqrs_provider_rs
CQRS provider with ioc container
-
isnt
Inverted versions of boolean-valued stdlib functions
-
merge2
Merge structs into single by values
-
thiserror-nostd-notrait
derive(Error)
-
mau
procedural macro library for memoization with MauQueue optimization
-
crier
but flexible observer library
-
partially
Partial trait, and an optional macro to mirror a struct, wrapping each field in an Option
-
arinc424
ARINC 424 parser
-
http-request-derive
Use derive to create HTTP requests
-
flaky_test
atttribute macro for running a flaky test multiple times
-
dynamodel
derive macro to implement conversions between your object and
HashMap<String, AttributeValue> -
thread_local_scope
Scoped access to thread local storage
-
reborrow-generic
Generalized reborrowing traits and an optional derive macro
-
bubble
Enterprise-level development framework
-
fromenv
Derive-based, type-safe configuration from environment variables
-
pinned-aliasable
Pin-based stopgap for unboxed aliasable values in self-referential data structures
-
seekable-iterator
Traits for iterators and lending iterators with seeking capabilities
-
bcf_reader
a small, lightweight, pure-Rust library to allow efficient, cross-platform access to genotype data in BCF files
-
unwrap_unreachable
Option::unreachable()andResult::unreachable()methods -
structx
Simulating anonymous struct and named arguments in Rust
-
failed-result
A small crate for converting various failed value to result with corresponding error type
-
stdio-override
overriding Stdin/Stdout/Stderr with a different stream
-
roketok
way to simply set up a tokenizer and use it. Not recommended for simple tokenizers as this crate adds a bunch of stuff to support many if not all kinds of tokenizers
-
oofs
Error handling library that generates and injects context for you
-
scaffolding-core
A software development kit that provides the scaffolding for building applications and services using OOP
-
spade-diagnostics
Helper crate for https://spade-lang.org/
-
vsprintf
Rust bindings to the libc vsprintf function
-
deltoid
calculate and apply deltas to structs and enums
-
dioxus-use-js
A macro that generates Rust bindings to JavaScript or TypeScript functions, with compile time checks. For use with Dioxus.
-
reda-lef
Lef file library
-
soapy
Structure-of-arrays derive macro
-
empty-fallback-chain
Iterator adaptor like chain, but conditional on empty first iterator
-
mod_use
pub mod xxx; use xxx::*;
-
unwinder
Call stack spoofing for Rust
-
fray
A type-safe and ergonomic Rust library for working with bitfields
-
mongo_indexed
derive macro to declaratively index mongo collections
-
chemrust-core
The core modules defining the flow and structs of data in computational chemistry routines
-
error-combinator
Type-driven error composition with functional combinators
-
oors
Adding cross-crate inheritance features to Rust structs
-
nenyr
initial version of the Nenyr parser delivers robust foundational capabilities for interpreting Nenyr syntax. It intelligently processes central, layout, and module contexts, handling complex variable…
-
parametric
providing the trait and a derive macro to bridge complex, hierarchical data structures with optimization algorithms that use flat parameter vectors
-
round
your floats with precision from 1 to 10
-
flowrs-core
Core components of the flowrs framework for directed graph workflows
-
collect-with
enhanced collection operations with capacity control
-
rangetools
Extending the Rust Range structs found in std::ops
-
generic-upper-bound
Stable workaround for internal uses of generic-const-exprs
-
result-transformer
Traits, macros and utilities for transforming Result values
-
restructed
Quickly derive subsets of your structs
-
isotopes
Variants of common types for enforcing invariance
-
slip-10
SLIP10 implementation in Rust
-
beekeeper
A full-featured worker pool library for parallelizing tasks
-
rooting-forms
Generates HTML (rooting) forms from structures
-
monadify
functional programming abstractions in Rust, focusing on Monads, Functors, Applicatives, and related concepts
-
enum_discriminant
Procedural macro to add functions on enum types to get discrimnant value from variant or create unit variant from discriminant value
-
depends
Ergonomic, performant, incremental computation between arbitrary types
-
const-field-offset
Wrapper around field-offset crate and const-field-offset-macro
-
chainerror
Make chaining errors easy
-
syllogism
allow for some specialization using stable Rust
-
scopes-rs
Strongly typed scoped authorization library
-
derive_hash_fast
A faster replacement for
#[derive(Hash)]for types without padding -
ijzer
Main crate for IJzer. Provides a macro for using IJzer in a rust project, and a prelude with dependencies..
-
bhc-arena
Arena allocators for efficient compiler data structure allocation
-
optfield
A macro that generates structs with optional fields
-
signo
A human-readable, compile-time access descriptor that encodes ownership, shared borrowing, and exclusive borrowing as types
-
cbsk_mut_data
ref mut tool
-
bio-types
A collection of common biomedical types for use in rust-bio and rust-htslib
-
globals
Painless global variables in Rust
-
field_path
Type-safe, no-std field access and reflection utilities
-
gen_ops
Macros for operator overloading for generic types
-
hax-rust-engine
The engine of the hax toolchain
-
error-enum
Provide a easy way to define an enum that represents errors with error codes, document comments and several other functionalities
-
hs-bindgen
Handy macro to generate C-FFI bindings to Rust for Haskell
-
blueprint-cmp-any
Comparison for &dyn types
-
open-feature-env-var
Environment Variable provider for OpenFeature
-
clap_reverse
Derive macro for building
std::process:Commandfrom a Rust struct -
galaxy_save_core
Defining common types and traits used in the save data of Super Mario Galaxy and Super Mario Galaxy 2
-
arid
An ergonomic object-model for Rust
-
casting
CastFrom and CastInto traits for generic numeric casting
-
steepen
Create multiple iterators from a single iterator by separating elements
-
action_dispatch
通用的基于属性宏的 Action 注册与分发系统,支持正则匹配、优先级、全局同步执行模式
-
crispii_errors
CrispiiError enum to be returned by any failing crispii functions
-
simple-error
error type backed by a string
-
structupdate_support
Type definitions used by the structupdate crate
-
aerosol
dependency injection for Rust
-
mode
A behavioral state machine library written in Rust
-
iterstats
Statistics for rust iterators
-
std-traits
Traits for types in the standard library
-
wd_log
A practical log crate for rust
-
loose_enum
A macro for defining loose repr enums
-
rust-automata
A framework and a DSL for building finite state machines in Rust
-
alternating-iter
Provide an iterator adaptor which alternate between two iterators
-
luhproc
A lightweight background process manager
-
jkcenum
Rust enum library
-
re_string_interner
string interning library
-
anony
Anonymous struct
-
untrusted_value
aim to provide a type-safe way to handle and sanitize potentially untrusted values like user input
-
sigma-enum
A macro to simulate sigma types with enums
-
poise_error
An opinionated plug-and-play library for error handling in Discord bots made with poise
-
unwrap-enum
generate methods to access enum variants
-
stackaroo
Swap out of the OS-provided stack
-
rust-box
odd set of tools for Rust programming
-
cranelift-assembler-x64
A Cranelift-specific x64 assembler
-
backtrace-error
wrap errors with automatic backtrace capture and print-on-result-unwrap
-
occupied
A type-safe way to interact with removing from and inserting into options
-
kindest
Costless typed identifiers backed by UUID, with kind readable in serialized versions
-
rootfinder
Root-finding methods for both univariate, scalar-valued functions and multivariate, vector-valued functions
-
crashlog
Panic handling for humans
-
pinkie
(Almost) compile-time scoped CSS-in-Rust
-
candied
that provides macros to reduce code size and adds syntactic sugar
-
re_error
Helpers for handling errors
-
fourcc-rs
Types and macros for working with Four-Chracter Codes (fourcc)
-
dioxus-stores
Server function macros for Dioxus
-
brk_traversable
Traits for Vecs structs throughout BRK
-
simple-zanzibar
A simplified Rust implementation of Google's Zanzibar authorization system with DSL support
-
custom-format
Custom formatting for Rust
-
funty
Trait generalization over the primitive types
-
lazy-static-include
lazy_static_include_bytesandlazy_static_include_strmacros to replaceinclude_bytesandinclude_strmacros -
stilltypes
Domain-specific refined types for the Rust and Stillwater ecosystem
-
never
A stable version of the unstable never type (!)
-
enum-typer
Type-indexed enums and GADTs for Rust via procedural macros
-
deaf
parsing and modifying ELF binaries
-
conv
number of conversion traits with more specific semantics than those provided by 'as' or 'From'/'Into'
-
haste-fhir-operation-error
Haste Health FHIR operation error handling
-
ffi_trait
FFI-safe trait vtables
-
ptr-arrow
A macro to emulate C-style arrow syntax
-
macro-attr-2018
macro_attr!macro that enables the use of custom, macro-based attributes and derivations -
railsgun
Excessive tooling for Result handling - If you want rails you got RAILS!
-
metrique-aggregation
working with unit of work metrics - aggregation
-
niloecl
axum handler pattern for twilight interactions
-
dyn-iter
Wrapper around
Box<dyn Iterator<Item = V> + 'iter>to simplify your code -
clerr
aids in command-line error reporting
-
embed_it_utils
The utils for [
embed_it] -
willow25
A ready-to-use implementation of the Willow specifications
-
culprit
error crate with the goal of identifying precisely where and in which context an error occurs
-
deploy-temp-fringe
safe, lightweight userland context switches
-
lcdm
High-performance ΛCDM Cosmology Engine (Facade)
-
rs_coroutine_core
Composable coroutine utilities and flow abstractions built on top of Rust's async ecosystem
-
typed-arrow-dyn
Dynamic Arrow facade for typed-arrow (runtime schema/builders)
-
hx-compiler
Compiler backend abstraction for hx
-
code-spells
Aliases some common (and less common) code snippets to macros named after thematically appropriate spells from Harry Potter, so that instead of calling drop(x), you can cast obliviate!(x)
-
cee-scape
access to
setjmpandsigsetjmpfunctionality -
off64
Read from and write to byte slices with u64 offsets
-
cral
C code gen
-
surqx
Query macro for SurrealDB
-
guard-clause
Syntactic sugar for writing simple guard clauses
-
anyhow-http
Customizable HTTP errors built on anyhow
-
lateinit
Unsafe late-initialization for statics
-
stack_dst
A wrapper that allows storage of unsized values of up to a fixed size inline (without boxing)
-
struct-metadata
Macros for attaching metadata to structs
-
repr-discriminant
Trait to retrieve the discriminant of an enum variant with a repr(T) at runtime
-
unit-ext
Fluent helpers for returning common wrapper values from the unit type
-
peeking-iter
An iterator adapter that allows infinitely-deep peeking
-
ouroboros_examples
Examples for the ouroboros crate
-
blueprint-dupe
Marker for types which are cheap to clone
-
hcp
running and subprocess and pinging healthchecks.io with result
-
enum_vec
Efficiently store a vector of enum variants as a packed n-bit vec
-
branch_hints
that provides likely and unlikely branch hint functions in stable Rust
-
masterror-template
Template utilities for masterror and its derive macros
-
cobweb_asset_format
COB definition with parsing and ser/de
-
api-guidelines
Rust API guidelines enums and utilities for code quality and best practices
-
rknn-rs
rknn rust binding
-
orceh
Easier plugin interfaces
-
raw_struct
procedural macro for easily declaring C-style structs that reference local or external memory, based on your memory implementation. It generates appropiate getter methods for easy access.
-
endian-cast
generic functions and traits for accessing big-endian and little-endian versions of data types with a cheap abstraction that is zero-cost when the platform endianness matches the desired endianness
-
zerortt-api
Primitive types and traits for zerortt
-
stylish-html
stylishhelpers for writing styles as HTML elements -
parenv
Environment variable parser with a clap style derive macro and elm style error reporting
-
axum-typed-routing
Typed routing macros for axum
-
fieldwork-borrow
Field-level borrow splitting for Rust
-
optifier
Rust macros for deriving optional types
-
nounwind
A attribute macro to prevent panics from unwinding, similar to C++ noexcept
-
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
-
pike
A macro collection to pipe |> your functions calls, like in functional languages such as F#, Elixir and OCamel
-
internal-iterator
Internal iteration equivalent of
std::iter::Iterator -
yoshi
Entry for the Yoshi error framework
-
separator
Formats numbers into strings with thousands separators for readability
-
yzy-prom
A macro crate for defining prometheus metrics
-
wordnet-types
Shared types and part-of-speech enums for WordNet data
-
io-streams
Unbuffered and unlocked I/O streams
-
mutually_exclusive_features
Macros to check that only none or one of a set of features is enabled at a time, as known as mutually exclusive features
-
octofhir-cql-types
CQL type system
-
lwxm
lightweight extensible macros (universal macros for every language)
-
as_repr
Rust trait for constant
#[repr(T)]conversions -
bevy_cell
Attach Bevy's Handles/Entities statically to Types
-
int_like
macro for defining integer-backed opaque types safely
-
monadic
macros to define Haskell style monadic action blocks for IntoIterators, Reader, Writer, State, and macros for the transformers ReaderT and WriterT over Vec, LinkedList and VecDeque
-
arrays
Construct an array from an iterator
-
iterator-sorted
Stable functions for checking iterator sorting
-
fnichol-cime
A demonstration of a Rust CI build/test/release workflow supporting multi-platform testing, binary builds, Docker image building, and Crates.io publishing
-
inew
Macroses for constructor generation
-
tc-error
TinyChain's generic error struct
-
plain_hasher
Hasher for 32-byte keys
-
partial_derive2
makes all the properties of a struct type an optional property
-
iter_accumulate
An iterator adaptor that accumulates the elements and yields the current accumulated value for each iteration
-
iter-index
More flexible alternative to Iterator's enumerate() method
-
ubits
Bit fields and masks
-
garray2d
Game development focused 2d array with signed index and offset support
-
cgp-error
Context-generic programming error components
-
typeables
type aliases. By SixArm.com.
-
s3-bucket
wrapper around aws-sdk-s3
-
bool_ext
defines and implements a complete set of
Option/Result-style Boolean functional combinators on Rust’sboolprimitive type -
enum_dict
Efficient enum-indexed dictionaries
-
ffi_time
FFI assistant for Rust time types
-
noprocess
A lightweight Rust library for managing long-running processes with graceful shutdown, restart capabilities, and error handling
-
const-destructure
Destructuring in const contexts on stable Rust
-
retry-policy
Retry Policy
-
brk_rolldown_plugin_vite_css_post
Rolldown plugin for Vite CSS post-processing
-
simple-eyre
One of the simplest error reporters one can build ontop of eyre, defining only an error report
-
panicking
std::thread::panickinganalog available in theno_stdcontext -
unarray
working with uninitialized arrays
-
sqlxgentools_misc
Various data types and traits to use in a sqlxgentools-enabled codebase
-
parsable
A trait to easily parse data structures
-
univec
A vector that can hold elements of any single type
-
stream_assert
Macros to simplify testing of
Streambased APIs -
helper
provided some useful proc macros for Rust
-
open-enum
An attribute for generating "open" fieldless enums, those that accept any integer value, by using a newtype struct and associated constants
-
translatable
A robust internationalization solution for Rust featuring compile-time validation, ISO 639-1 compliance, and TOML-based translation management
-
enum-derived
Generate random instances of your enums and structs
-
ferrunix
A lightweight run-time dependency injection framework for Rust
-
mers_lib
mers language in other projects
-
rst-common
A shortcut to common Rust crates
-
rslint_errors
Pretty error reporting library based on codespan-reporting built for the RSLint project
-
egui_struct
EguiStruct is a rust derive macro that creates egui UI's from arbitrary structs and enums
-
field-kinds
Derive macro for compile-time struct field type introspection
-
optionally_const
Optional constness on stable Rust
-
enumerable
helping you to enumerate all possible values of a type
-
blf_lib-derivable
Shared traits used by blf_lib and blf_lib-derive
-
fyi_ansi
Compile-time ANSI formatting macros for FYI
-
chain-reader
Combining multiple [
Read] instances into a sequential read pipeline with configurable error handling -
bon-cli
Dev tool for working with the
boncrate -
tentacli-traits
Traits and types for tentacli and related projects
-
onechatsocial-result
Revolt Backend: Result and Error types
-
reinhardt-di
Dependency injection system for Reinhardt, inspired by FastAPI
-
bulks
Amazing bulks! They are like iterators, but in bulk, and therefore support collection into arrays
-
auto_ops_det
Macros for easy operator overloading
-
dipa
dipa makes it easy to efficiently delta encode large Rust data structures
-
stub-macro
stub!() is a better version of todo!() that can be assigned to a variable
-
solace-rs
Unofficial Solace PubSub+ Rust Client Library. It can be used to access the services of a Solace PubSub+ Event Broker. This is a wrapper around the Solace C library. Use under your own risk…
-
try-partialord
Safe failable sort, min, max, binary_search functions for PartialOrd. No need to wrap f32, f64 to sort any more.
-
impl-opaque
Macro for declaring complex struct and initializer
-
ptr-union
Pointer union types the size of a pointer by storing the tag in the alignment bits
-
hierr
RUST Error
-
extension-traits
Annotation to easily define ad-hoc / one-shot extension traits
-
scheduled-task
对tokio-cron-scheduler库的增强
-
oak-symbols
Symbol extraction and management for the Oak framework
-
zellij-tile
A small client-side library for writing Zellij plugins
-
constptr
NonNull without mutability
-
uuid-enum
UUID-based enums
-
msica
Windows Installer Custom Actions
-
bitrange
plugin to map bits in integer values to fields
-
iceyee_error
Error Message
-
dkg
Distributed key generation over ff/group
-
derive_agent_tools
Derive macros for defining AI tools from structs
-
itern
enumtypes for choosing between N differentIteratortypes in a single type -
applying
Apply functions in method-position
-
toast-cell
Zero-cost type-branded cell with no runtime checks
-
ux2
Non-standard integer types like
u7,u9,u10,u63,i7,i9etc -
spade-codespan-reporting
Beautiful diagnostic reporting for text-based programming languages
-
custom_error_core
Define custom errors without boilerplate using the custom_error! macro
-
eoe
exiting processes on errors gracefully
-
rx_core_operator_error_boundary
error boundary operator for rx_core. ensures at the type level that no errors are coming from upstream.
-
asm_block
Translate tokens to string for Rust inline assembly
-
assert_matches2
A version of the assert_matches! macro that brings variables from the pattern into scope
-
autoerr
Very opinionated helper to declare error types
-
tuple_list
macro-free variadic tuple metaprogramming
-
expect-exit
Result.expected(): display an error message and exit without a panic
-
cppstreams
C++ streams in rust
-
nuhound
Improve error handling capability
-
outcome-46f94afc-026f-5511-9d7e-7d1fd495fb5c
Augmentations for error propagation
-
loomx-axum
Axum integration for loomx
-
rayon-join
macro to call join from rayon with more than 2 arguments
-
borrowck_sacrifices
Necessary sacrifices to keep the Borrow Checker happy and developers sane
-
tagset
Easily create trait-dispatching sum types
-
abstract-impl
Create abstract implementations for traits
-
menv
Pulling in arguments from environment variables
-
dioxus-keys
An unified DataKey interface coupled with a few helper macros to help you make global keys
-
tauri-plugin-keygen-rs2
Tauri plugin for Keygen.sh licensing, based on keygen-rs
-
defer-lite
A lightweight high-performance implementation of Go's defer statement
-
more-convert
adds macros for various conversions
-
const_struct
macro that allows const structures to be passed as const generics
-
ownables
that defines the Ownable trait and facilitates mutation by moving or reading from the source
-
sitrep
Frontend-agnostic progress reporting
-
fieldx_plus
Design patterns built on top of fieldx crate
-
update-available
check for updates of a crate on crates.io, GitHub or Gitea
-
sigmut
a state management framework designed to be used as a foundation for UI frameworks
-
matrix-slice
Safe abstractions for two-dimensional slices
-
caliber-agents
Multi-agent coordination primitives for CALIBER
-
rebounded
Bounded types
-
filecaster
Procedural macro to derive configuration from files, with optional merging capabilities
-
enumcapsulate
Safe casting for newtype enums and their variants
-
ruru
Native Ruby extensions in Rust
-
ratatui_router
Page-based router with auto-generated routing for ratatui
-
optional-numeric-index
Traits and macros for creating compact optional numeric indices
-
unpaid-intern
A convenient little string interner
-
unsafe_cell_slice
A microlibrary for creating multiple mutable references to a slice
-
newtypes
Macros that ease the implementation of the Newtype pattern
-
get_set_macro
Procedural macro to generate customizable getters and setters in Rust
-
cynic-querygen
Generates code for using cynic from GraphQL query input
-
async-ebpf
Async-friendly, fully preemptive userspace eBPF runtime
-
guard
Macro implementation of RFC 1303: a guard-let-else statement a la Swift
-
fastpeek
A different way to peek iterators
-
type_inference
type inference for lazysql
-
typeid
Const TypeId and non-'static TypeId
-
enumizer
macros for generating enums that are equivalent and convertible to standard library enums
-
float-bits
Floats stored as raw bits, making them hashable and totally ordered
-
tear
Typed early returns and loop control + Syntax sugar for try!-like error handling
-
intertrait
Allow for inter-trait casting
-
selfie
Experimental, macro-free and allocation-free self-referential structs
-
fack
Declarative error handling library with no_std support and composable code generation
-
rs_envflag
An easy way to define flags by environment variables
-
macron-collections
Creates a new instance of std collections: HashMap, HashSet, BTreeMap, BTreeSet, VecDeque, LinkedList and BinaryHeap
-
enum-field
Declarative macros for enum-based heterogeneous field accessors
-
rsutil
rsutilis a Rust library providing common utilities -
instability-example
Example crate demonstrating instablity usage
-
error-kit
A comprehensive error handling library for Rust applications
-
overengineered_hkts
Expiremental crate of higher-kinded types integrated with lifetimes and matching function types and optional cloning and supporting no_std
-
wrap-match
A procedural macro to wrap a function in match statement to make error logging super easy
-
ww_numeric
Various numeric types, subtypes, shift-scale
-
ser_mapper
Mapped DTO serialzation wrapper for DBO/Model
-
rtlola-reporting
An error reporting crate for RTLola-related crates
-
opentalk-types-signaling-timer
Signaling types the OpenTalk timer module
-
dialasm
pest based dialogue DSL for Rust
-
wartcl
A minimal embeddable Tcl-like language
-
creusot-std
Standard library of Creusot: provides specification macros, contracts for Rust standard library and logic helpers
-
forward_ref
Rust's forward_ref_* macros for easier implementation of operator overloading
-
pack1
Byte array newtypes for different primitive types
-
delegate-attr
Attribute proc-macro to delegate method to a field
-
flat-drop
Wrapper that drops recursive objects iteratively to avoid stack overflows
-
swap_crate
swap function crate
-
parsy
efficient parser combinators library
-
precept
A testing utility for fuzzing and fault injection to discover erroneous and interesting states
-
ordes
treating arrays and tuples a little bit more like vectors
-
type-flow-traits
Traits to implment for the type-flow abstractions
-
append-only-bytes
Shareable append-only bytes
-
light_clone
Compile-time enforcement for O(1) clone operations
-
indexed-struct
A derive macro for creating indexed data structure with efficient query capabilities
-
openrunner-rs
running OpenScript
-
cron-job
A cronjob implementation using the cron scheduler
-
implementation
The implementation crate
-
sqlx-error
A wrapper around
sqlx::Errorto provide error path and additional context -
structupdate
defining complex updatable datastructures
-
rust-code-analysis-web
Run a web service to compute and export code metrics
-
histo
histograms with configurable buckets
-
pathbufd
PathBuf with Display + formatting macro
-
amble_data
Shared data model used by amble_engine and amble_script for the Amble game engine
-
captur
Macro to capture whole structs from disjoint fields in a closure
-
cdumay_error_json
JSON error
-
enum_cycling
Small macro for working with enums
-
thiserror-context
A wrapper around thiserror, giving you the ability to add context
-
poly_it
A no-std library for manipulating polynomials with slice support and minimal allocation
-
forester-rs
Workflow framework based on the behavior trees
-
binread
helping read structs from binary data using ✨macro magic✨
-
singlemap
rust single map a macro
-
nanocl_error
Nanocl error types
-
floats
f16 and f128 floating point types for compatibility with future Rust versions
-
ipv6-ddn
convert between Standard IPv6 (Hex) and IPv6 Decimal Dot Notation (DDN)
-
downcast
Trait for downcasting trait objects back to their original types
-
cmp
convenience macros and function for comparing
-
pbni-rs
PBNI for Rust
-
nonzero_lit
Easy, safe, and fully zero-cost NonZero constants and literals
-
mdnt-groups-support
Support traits for the
picus::groupmacro -
bigerror-error-stack
A context-aware error-handling library that supports arbitrary attached user data
-
facet-core
Core reflection traits and types for the facet ecosystem - provides the Facet trait, Shape metadata, and type-erased pointers
-
naan
A fast, easy, and tasty functional programming prelude
-
calc_lib
calculating things with correct order of operations
-
swift-rs-hatter-fork
Call Swift from Rust with ease!
-
ctrlgen
Generate enums for message-passing services
-
kurtbuilds_std_ext
Standard library extensions
-
dterror
Dat Error
-
log-error
A small crate to log the error result easily
-
cew
Personal Rust utility library
-
enum-variants-strings
Derive macro for converting instances of enums to and from strs using variant names
-
macro-attr
macro_attr!macro that enables the use of custom, macro-based attributes and derivations. Supercedes thecustom_derivecrate. -
consume_on_drop
A zero-cost abstraction that allows Drop::drop to consume self by value
-
dynpatch-interface
Shared interface types and traits for dynpatch hot-patching system
-
core_io
copy of libstd::io with all the parts that don't work in core removed. Most importantly, it provides the Read and Write traits. This crate is (mostly) automatically generated from the rust git source…
-
hash256-std-hasher
Standard library hasher for 256-bit prehashed keys
-
morseytype
terminal-based Morse code typing trainer designed to help you improve your Morse code proficiency through structured practice sessions. The application presents words from english vocabulary lists…
-
prefix-stmts
Macro to prefix several statements with the given tokens
-
convi
Convenient (but safe) conversion (
From-like) traits -
wutil
A lightweight library that contains useful functions, wrappers, and macros
-
enum-ptr
Ergonomic tagged pointer
-
pavex_miette
A custom Miette theme for Pavex CLI errors
-
rose-nockchain-types
Nockchain types for Rose wallet
-
tryphon
Type-safe configuration loading from environment variables using derive macros
-
libobs-window-helper
list of windows that can be captured by OBS
-
icebook
Generic component storybook framework for Iced applications - compiles to WASM
-
multi-any
MultiAnyis just likeAnybut can downcast to trait objects -
binmarshal
Pack and unpack structs and enums into and out of binary data streams
-
nohasher
No-op hasher
-
tf2-sku
SKU parser for Team Fortress 2 items
-
likely_polyfill
cold_path, likely, and unlikely for non-nightly Rust
-
snapshot-testing
Assert that strings equal easily updatable snapshot files. Show nice colored diffs if not.
-
capture-it
Modern c++-ish capture syntax for rust
-
typestate
A proc macro DSL for typestates
-
update_cell
A Cell<Option<T>> that you can update
-
hexga_generational
GenVec, ideal for MAS (Multi-Agent System), where each agent can be removed at any time and has references to other agents
-
rawpointer
Extra methods for raw pointers and
NonNull<T>. For example.post_inc()and.pre_dec()(c.f.ptr++and--ptr),offsetandaddforNonNull<T>, and the functionptrdistance. -
cock-lib
Measure the power level of a peen
-
monarch_core
Core functionality for the Monarch library
-
lstring
Key String: optimized for map keys
-
str_array
Fixed-size
strandCStrtypes backed by an array -
swap-pool
Allow objects to be stored either in RAM or on disk
-
rustc-ap-rustc_lint_defs
Automatically published version of the package
rustc_lint_defsin the rust-lang/rust repository from commit 9a27044f42ace9eb652781b53f598e25d4e7e918 The publishing script for this crate lives at: https://github… -
first-err
Find the first Err in Iterator<Item = Result<T, E>> and allow iterating continuously
-
implied-bounds
Make all the bounds of a trait definition be implied through a helper trait and macro attribute
-
get-field-by-type
Get a value of field, based on the type of a field
-
slotpoller
Bounded, lock-free futures collection. Faster than FuturesUnordered and other crates.
-
macros_rule
Change the verbiage of
macro_rules!tomacros_rule! -
dlopen
opening and operating on dynamic link libraries (also known as shared objects or shared libraries). This is a modern and more flexible alternative to the already existing libraries like libloading or sharedlib
-
rust-2018
Macro to use Rust 2018 from all editions
-
fromsuper
Macro helpers to derive new sub-structs from existing super-structs, potentially unpacking Options
-
enum-group-macros
Define grouped enums with ergonomic pattern matching
-
langlang_value
langlang is a parser generator based on Parsing Expression Grammars (library)
-
snafu-tracing
Snafu tracing is an error handling mechanism with pseudo-stack traces implemented through SNAFU, the proc macro trace_error, and the DebugTrace trait, inspired by GreptimeDB
-
argcall
Enables enums and structs to be callable by associating functions with their variants or fields
-
exempi2
Safe Rust bindings to Exempi 2.4
-
edsm-dumps-model
Data models for EDSM dump data
-
fast_assert
A faster assert!
-
fastn-resolved
fastn: Full-stack Web Development Made Easy
-
frut_std
Standard library for the Frut language
-
nzliteral
Macro simplifying use of NonZero literals
-
data-classes
Abbreviation of #[derive(xxx)]
-
release_tina
demo
-
drop_guard
enables you to implement the Drop trait on any type. So you can run a closure on any value running out of scope
-
arri_repr
Rust representations of Arri types
-
singleton-manager
A programatical singleton manager
-
collate
Traits and a data structure to support collation and bisection
-
json-crawler
Wrapper for serde_json that provides nicer errors when crawling through large json files
-
strid
Improve and strengthen your strings by making them strongly-typed with less boilerplate
-
identity-diff
Difftrait to compute and merge data structure differences -
advancedresearch-higher_order_core
Core structs and traits for programming with higher order structures in Rust
-
table_enum
A convenient rust macro to create enums with associated constant data (note: this is different from normal rust enums which are really tagged unions)
-
pulz-functional-utils
traits and macros to work with tuples and functions
-
nade
Adding named and default arguments to Rust functions
-
swamp-script-derive-tests
tests for swamp macro
-
typederror
A wrapper around anyhow that allows for a primary error type
-
envfmt
Expands environment variables in string
-
delegate-match
Proc-macro for delegation of grouped match arms
-
mayber
A zero-cost enum for handling either references or owned values with a unified interface
-
backtrace-ext
minor conveniences on top of the backtrace crate
-
blueprint-display-container
implement Display
-
evident
Pub/Sub library using IDs to identify events
-
zero_v
implementing iterators over function outputs for collections of types implementing a common trait, without using vtables/ dynamic polymorphism
-
u160
Unsigned Integer 160 bits
-
error-graph
Allows non-fatal errors in a tree of subfunctions to easily be collected by a caller
-
crony
cron runner that spawns another thread to run your cron jobs
-
supertrait
enables default associated types and const fn trait items in stable Rust
-
bytify
macro that can write given const-expr values into a continuous byte array
-
raw-transmute
A more permissive alternative to mem::transmute, because you know better
-
clockwork-tuples
Type-level tuple utilities for compile-time structural reasoning
-
bhc-diagnostics
Error reporting and diagnostics for BHC
-
nvim-oxi-luajit
Rust bindings to LuaJIT for nvim-oxi
-
synchro_macro
Synchro is a Rust framework for building fullstack applications that run seamlessly across platforms
-
dddk_core
Tactical DDD framework based on command_bus, event_bus and query_bus. It offers annex feature such as authorization, logging ...
-
chillpill
A more powerful (and more restrictive)
std::panic::catch_unwind -
const_fn
A lightweight attribute for easy generation of const functions with conditional compilations
-
maybe-borrow
Macros for conditionally returning borrowed data
-
tisel
Effective type-based pseudodynamic dispatch to impls, enums and typeid
-
rdcl_aoc_helpers
Helpers for Advent of Code
-
igc_parser
A high-level parsing/deserializing crate for IGC flight recorder files
-
thisctx
Easily create error with contexts
-
prange2
Parse numeric ranges for indexing
-
refined_type
imbuing rules into types and elevating them to more robust types
-
interns
Object interner
-
simple_generators
making work with generators simpler
-
moro-local
Experimental structured concurrency support for async Rust (similar to trio's nurseries). Works with non-Send futures on stable Rust.
-
gull
type generation
-
read_int
get user input in any primitive type
-
poison-guard
maintaining sane state in the presence of panics and failures
-
simple-logging
logger for the log facade
-
fallthrough
Pattern match with fallthrough, in the style of C switch
-
rioc
Zero cost dependency injection macros
-
accio_rs
macros for sync and async runtime
-
type-factory
unique opaque types
-
async-convert
Async TryFrom/TryInto traits
-
unwrap_or
Four easy unwrap Result and Option macros that allow for any inline-scoped code for things like return, continue, and break
-
rong_assert
Assert module for RongJS
-
path-dsl
DSL and macro to help deal with Paths and PathBufs
-
upget
Super simple trait that patterns the value "updae" and "get"
-
cassandra_macro
Create Cassandra tables and CRUD CQL prepared statements from Rust structs. (custom derive: cassandra_macro_derive)
-
filters
Build filters/predicates with the builder pattern
-
kind-openai-schema
OpenAI schema generation macro public library
-
xuyingjie_hello_macro
test for publish xuyingjie_hello_macro
-
const-tools
help write safe const fns such as destructuring and array operations
-
cr_lommy
Macros that are somewhat similar to Java Lombok!
-
rediff
Diff and compare Facet values with detailed structural difference reporting
-
numy
Trait boundaries for primitive Rust types
-
issues
An error reporting library for Rust
-
raz-common
Common utilities and shared types for the raz project
-
puniyu_library
puniyu 的共享动态库模块
-
nuts-storable
Traits for serializing and deserializing NUTS models and states in nuts-rs
-
kon_ecs
High-performance SparseSet-based ECS for the Kon Engine
-
rustc_errors
Reuse rustc_errors for compiler_base
-
quark
Types for manipulating numeric primitives at the bit level
-
pipeline
A macro collection to pipe |> your functions calls, like in F# or Elixir
-
olis_string
Small-string optimization for Rust, aims to replace std::string::String
-
nil
Noxmore's Ixperimental Lutilities
-
cortex-ai
An asynchronous flow-based processing framework for building flexible data pipelines with conditional branching and error handling
-
rxml_validation
Plumbing crate for rxml and rxml_proc crates
-
funcall
A lightweight Rust library that turns functions into JSON-callable tools
-
kv-derive
Derive struct conversions from and to key-value vectors
-
extend_mut
extending exclusive references
-
fromsoftware-shared
Helpers for dealing with pointers and other common stuff across games
-
lives
Lifetime-dynamic smart pointers
-
rustapi-openapi
Native OpenAPI 3.1 specification generator for RustAPI. Integrates Swagger UI.
-
derive_tools
A collection of derive macros designed to enhance STD
-
borked
convienient error handling library for rust
-
xwt-error
A suite of reusable error types that naturally emerge from the xwt API. Use when you don't want/need your own more precise types
-
proc-easy
Macros to make writing proc-macro crates easy
-
tayvo_okapi
Structs for OpenAPI (AKA Swagger) documents
-
quickvariant
C++-style variant library
-
android-logcat
Android logcat
-
shadow-clone
A macro to clone variables into the current scope shadowing old ones
-
mapcomp
Python-like list comprehensions for standard containers
-
pathbuf
A macro to conveniently build PathBufs
-
haskell_bits
Rust implementations of various Haskell typeclasses and functions
-
control-flow
A hack to control control-flow outside closures
-
genius-invokation
Abstractions and structures for Genius Invokation TCG
-
nar_dev_utils
用于NARS相关项目开发的实用工具包
-
error-stack-macros2
Community-made procedural macros for error-stack
-
ropr
A blazing fast multithreaded ROP Gadget finder. ropper / ropgadget alternative
-
chalk-macros
Macros for Chalk
-
skipcode
macro library enabling compile-time skipping of statements/blocks
-
dyn-context
mechanism for lifetimes erasing
-
elor
Base generic implementation of an Either type
-
wherr
Enhance Rust errors with file and line details using the
#[wherr]macro for clearer debugging -
exec-rs
that provides utility traits for task execution and, if the sync feature is enabled, the ability to synchronise tasks based on the value of a key
-
named-tup
Create named tuples using the tup!() macro
-
kcr_inference_kubedl_io
Kubernetes Custom Resource Bindings
-
derive-merge-struct
A derive macro to partially update a named struct
-
rootcause-backtrace
Backtraces support for the rootcause error reporting library
-
bytestream
convenient way of writing binary data to a buffer
-
fallible-option
Fallible is an Option with inverted Try-semantics
-
any_cmp
Support dynamic type comparisons
-
prost-dto
Data transfer object conversion macros for prost
-
atri_plugin
AtriPlugin
-
capnp_conv2
capnp write/read traits to convert from structs to readers/builders
-
approx-eq-trait
A trait for floating-point equality
-
takeable-option
A small wrapper around option
-
re_span
An integer range that always has a non-negative length
-
urlquerystring
A high-performance, zero-allocation URL query string parser
-
beerec-variants
Procedural derive macro to generate boilerplate on unit variants enum types
-
match-commutative
Match on patterns commutatively, reducing the use of duplicated patterns. ↔️
-
string_capacity
Moved to capacity_builder
-
fmt-derive
A more robust and versatile derive macro for Debug and Display
-
redb_model_trait
Redb model trait
-
bronzite-types
🔮 Shared types for Bronzite compile-time reflection IPC protocol
-
typearrays
Array of types
-
jtd-infer
Generate JSON Typedef schemas from example data
-
coded
concrete error type with an
ErrorKindenum matching Google’s “canonical error codes” -
oco_ref
A smart pointer for storing immutable values with relatively-cheap cloning. (Like a
Cowmeets anRc!) -
fused_error
working with composable errors
-
lazy-init
Lazy initialization
-
dfo
Differentiable Floating-point Operations in Rust
-
lsdata
LSD (Less Syntax Data) configuration/data transfer format
-
macro_lisp
Lisp-like DSL for Rust language
-
macro-toolset
Some useful macros
-
gur
A undo-redo framework
-
non-empty-str
Non-empty strings
-
scall
Friendlier raw system calls for Rust
-
gc_plugin_abi
Gridcore Plugin API
-
subsecond-types
Types crate for the Subsecond hotpatch engine
-
any-intern
An interner for various types
-
code-path
A code path macro
-
weirdboi_utils
A collection of utility macros
-
solgpc
An elegantly fast GPC parser
-
bounded-registers
A high-assurance memory-mapped register interaction library
-
lucidity
A distributed orchestrator platform for Rust
-
therror
derive(Error) with a twist (based on thiserror)
-
linreg
Calculates linear regresssions of two-dimensional data. Does not use stdlib, only depends on numeric traits.
-
enum_delegate
Easily replace dynamic dispatch with an enum, for speed and serialization
-
sai
IoC/DI framework for Rust
-
llmcc-rust
llmcc brings multi-depth architecture graphs for code understanding and generation
-
error-iter
Error::sources on stable Rust
-
invariant-reference
code authors define and use invariants
-
bon-sandbox
Not a real crate! It’s just a showcase of examples used by
bon’s documentation to demonstrate the rustdoc output for code generated by builder macros. Don’t use this crate, it… -
borrowme
The missing compound borrowing for Rust
-
handle-this-macros
Proc macros for handle-this error handling crate
-
reffers
Smart pointers: ARef, that allows even further owner erasure than OwningRef. Strong is a memory efficient Rc + RefCell in one. And more!
-
hash_ord
lib contains OrdMap(avl tree) and HashMap(use avl to resolve collision);
-
cartesian
QOL macro that creates the cartesian product of multiple iterators
-
assemblist
Define your builder patterns as you use them
-
fiberplane-pdk
Fiberplane Provider Development Kit
-
assert_approx_eq
assert approximately equal
-
trackr
Track changes on a struct as bitflags
-
coroflow
Composable coroutine utilities and flow abstractions built on top of Rust's async ecosystem
-
tryumph
A flexible retry library for operations that may fail, with customizable delay strategies for both synchronous and asynchronous code
-
enum-derive-2018
macros for deriving additional functionality for enums
-
teo-parser
Parser for Teo schema language
-
newt-hype
A very easy-to-use crate for creating wrapper structs using the new-type pattern
-
result-transformer-flow
Traits, macros and utilities for transforming Result values
-
isr-macros
Macros for ISR
-
hash_str
Strings with a precomputed hash
-
cobia
CAPE-OPEN COBIA binding interface library for rust
-
radiation
Convert Rust type into raw bytes and vice versa
-
descriptive_toml_derive
Procedural derive macro for serializing a struct into a TOML template with field descriptions that is easily edited and deserialized
-
jcers
jce in rust
-
ocl-macros
Macros for easier/faster working with the ocl crate
-
ffd
Fast Function Dispatch: Improving the performance of Rust's dynamic function calls
-
goof
A reusable, composable, aggregate and
no_std-friendly error library -
itertools-num
Numerical iterator tools. Extra iterators and iterator methods and functions.
-
bumpref
Explicit .bump() method for Arc and Rc that signals cheap refcount cloning
-
varchain
Async-only chain-based variable lookup engine, support no_std with alloc
-
witnessed
Type-level witness wrapper for carrying validated invariants
-
rialo-sol-lang-idl
Sol framework IDL
-
dirty-fsm
A quick and dirty state machine library
-
typewit_gce
for coercing between equal types with generic const arguments
-
type-flow-macros
Macros to make pipelines that encode the order of operation execution in the type signature of the pipeline and allow for functions that mutate that order
-
magic-params
Macro to call functions with typed arguments derived from a shared context
-
affix-macro
Macros for affixing tokens to groups of other tokens
-
manifest-dir-macros
function-like macros to check or operate paths relative to CARGO_MANIFEST_DIR at compile time
-
fromsoftware-dlrf
Macro for generating singleton specifier for usage with the DLRF singleton finder
-
deptypes
Dependent types
-
string_types
String newtypes
-
arri_common
Common types and utilities shared across Arri crates
-
ownership
Obtaining ownership
-
incomplete
incomplete!(), a compile-time checked version of unimplemented!()
-
text-block-macros
Create a multiline string literal
-
cooked-waker
A safe interface for creating async Wakers
-
mstr
2-word, immutable Cow<str>
-
dicebag
Dice rolling!
-
market
Infrastructure for producers and consumers
-
jaaptools
I really just wanted to try publishing a package, but this contains stuff I find useful in many circumstances
-
const-macros
Various macros for const contexts
-
order_theory
Traits which describe basic concepts from order theory
-
extended-primitives
providing primitive-like types for use
-
from_form
From forms to your structs
-
sen-plugin-api
WIT-generated API types for sen-rs plugin system
-
cmakelist_gen
A CMakeLists.txt generator for Rust projects
-
amonoid
A general-purpose monoid library
-
bty
Streamlined definition and usage of branded types in Rust
-
compose_core
The Compose Language implementation
-
daft-dsl
Domain-specific language for the Daft project
-
verdure-ioc
An ecosystem framework for Rust
-
runestr
User-perceived characters related types and data structures
-
roopert
object-oriented toolkit for Rust
-
explicit-error-http
Explicit concrete Error type to manage and monitor errors that generate an HTTP response. It has dedicated feature flag to integrate well with most populars web frameworks.
-
thiserrorctx
A wrapper around thiserror, giving you the ability to add context
-
unzip_iter
Unzip an iterator to iterators
-
rcsubstring
lightweigt reference-counted substring of an Rc<String>
-
named-block
Macro implementing early-exit-from-any-block
-
nitron-signals
Create native UIs in Rust
-
async-err
Contextual asynchronous error handling
-
maybe-uninit
MaybeUninit for friends of backwards compatibility
-
typeswitch
A powerful, Go-inspired macro for clean and declarative runtime type switching on dyn Any trait objects
-
ezcfg
configuration
-
physical-quantity
dimension and unit system for general physical physical quantities
-
proto-mapper
A Macro library for easier mapping between custom models and proto generated code
-
xwt-erased
Type-erased wrappers for the
xwt-dyntraits -
defew
A new() derive macro for structs
-
at
Helpers for indexing slices
-
measures
A unit-of-measure and electrical calculations library
-
anon_enum
Enum types with fully-generic variants
-
cheap-clone
A trait which indicates that such type can be cloned cheaply
-
fnrs
some useful functions i like
-
libabort
A abort function that doesn't require the standard library
-
deep_safe_drop
Safe dropping of deep trees that otherwise could cause stack overflow
-
drop_code
A macro that allows you to implement code that will be automatically executed after the function code has finished, be it the end of the function or even a panic state
-
metadata_macro
Rust macros for a very elementary metadata-like system in structs and tuple structs
-
bossy
Opinionated convenience wrappers for
std::process::Commandand friends -
lichen
Scripting DSL (for Dialogue Graphs, et al)
-
yoshi-std
Core, std-only error type for the Yoshi framework
-
gel-errors
Error types for Gel database client. Formerly published as gel-errors
-
singleton-cell
A more powerful Ghost Cell allowing the use of any singleton as the key
-
progress-streams
Progress callbacks for types which implement Read/Write
-
nesting
structs, enums, and impls, in Rust!
-
type_enum
Create tagged unions consisting of different types
-
webformd
trait for webformd_macro to deserialize actix_web::web::Form for structs with Option<Vec<String>> from a checkbox or similar
-
rust-extra
-
dyn-ptr
A box that stores types like pointers, forgetting everything besides
Self: Unsize<dyn Trait> -
inherit-config
Inherit configuration from parent struct
-
chain_link
Micro library with a util for chaining operations on a single type
-
option-ext
Extends
Optionwith additional operations -
floxide-transform
Transform node abstractions for the floxide framework
-
pax-std-primitives
Primitives crate for Pax's standard library
-
stable-type
OCaml inspired stable types
-
eventually
using Event Sourcing in Rust applications
-
with_drop
Nostd wrapper for using a closure as a custom drop function
-
rst_lex
lexer for Rust
-
djin-protocol
protocol, for aoe-djin
-
atomicell
Multi-threaded RefCell on atomics
-
adhesion
A set of macros for design by contact in Rust. The design of this library was inspired by D's contract programming facilities.
-
match_cfg
A convenience macro to ergonomically define an item depending on a large number of
#[cfg]parameters. Structured like match statement, the first matching branch is the item that gets emitted. -
influx3_lp
A serializer for Rust structs according to InfluxDB 3 line protocol
-
twisterl
Reinforcement learning primitives and a Python extension for high performance training and inference
-
noema
IOC and DI framework for Rust
-
index_permute
permuting a slice which elements are not Clone or Copy in Rust
-
stock-symbol
A data type for representing stock symbols
-
common-stdx
extension for the std lib, for things i commonly reuse
-
double-trait
A procedural macro to derive a mirror of a trait designed to make it easier to implement test doubles
-
xmlparser-derive
A proc macro to generate functions for writing to and parsing from xml string, based on xmlparser
-
sentry-conduit
Sentry middleware for conduit
-
hurry
Convenient macros for creating pointer types (Box, Rc, Arc, etc.)
-
regex-macro
A macro to generate a lazy regex expression
-
vanguard-plugin-sdk
SDK for developing Vanguard plugins
-
cfgenius
Conditional compilation with macro support in Rust
-
rs-utilities
Some utilities
-
include-utils
mdBook-like include macro as the powerful replacement for the standard
include_strmacro -
component_model
Revolutionary type-safe component assignment for Rust. Build complex objects with zero boilerplate using derive macros and type-driven field setting. Perfect for configuration builders…
-
leetcode_prelude
Some useful macros and definition for exercising in leetcode
-
enum-unitary
Trait and macro for unitary enums
-
a1
A package for converting to and from A1 spreadsheet notation
-
quick-error
A macro which makes error types pleasant to write
-
tor-units
macros for types which are constrained within a range, ensuring invalid values are unrepresentable
-
safe-manually-drop
ManuallyDrop“owned field” pattern with nounsafe, no.unwrap()s, no macros -
context_manager
Python's like context_managers in Rust
-
ino
I/O traits more general than std::io
-
color-eyre-attach-report
An error report handler for panics and eyre::Reports for colorful, consistent, and well formatted error reports for all kinds of errors. This fork adds the ability to attach new reports to existing reports.
-
enum_handler
A macro to generate a handler trait for enums variants
-
objid
Generate a random object identifier
-
const_str_slice_concat
const concatenation of string slices
-
portable-io
“ A subset of Rust
std::iofunctionality supported forno-std -
tiff-encoder
creating TIFF files
-
compare_variables
procedural macro for comparing the ordering of variables and creating useful error messages
-
ebml-iterable-specification
base
EbmlSpecificationused by theebml-iterableandebml-iterable-specification-derivecrates -
kind
Costless typed identifiers backed by UUID, with kind readable in serialized versions
-
cfg-tt
A procedural macro that allows using #[cfg] anywhere and at token granularity
-
next-web-mqtt
Next Web Mqtt
-
index-ext
Index slices with arbitrary ints and as arrays
-
char-device
Character Device I/O
-
windows-helpers
Helpers for the windows crate
-
humthreads
Threads for humans
-
rx_core_subscriber_higher_order
higher_order subscriber provider for rx_core
-
const-units
that lets you check the dimensions of your quantities at compile time and run time
-
nameof
macro to determine the string name of a binding, type, const, or function
-
nash-solve
The entry point of nash's type inference system. Implements type inference and specialization of traits.
-
loomx-macros
Macros for loomx
-
bencode-minimal
A Bencode library depending only on the Rust standard library
-
coercible_errors
Zero-cost error handling for generic traits
-
magic-args
"Magic" declarative-style function arguments
-
takumi-macros
Takumi 是一个顺序任务框架, 帮助你在大型代码库里组织自己的工作流
-
warnalyzer
Show unused code from multi-crate Rust projects
-
duh
macro utilities
-
possibly_uninit
Traits and types helping with using uninitialized memory safely
-
secador
Stop repeating code
-
ranim-anims
The built-in animations of Ranim
-
ex_em_ell
Provide macros for serializing and deserializing XML
-
cronjob
scheduling your methods
-
recuerdame
Pre-calculate functions at compile-time rather than run-time
-
tower-resilience-chaos
Chaos engineering layer for Tower services - inject failures and latency for testing resilience
-
freenet-scaffold
Support library for building Freenet apps
-
effs
Effects based minimal std lib alternative
-
child-of
that allows you to make one struct a child of another
-
error-ext
Error utilities
-
round_pipers
A way to pipe ndarrays using circular buffers
-
component-map
Generic component manager with sync/async and fallible/infallible initialisation
-
algar
Algebraic structures, higher-kinded types and other category theory bad ideas
-
abs-file-macro
A macro that returns the absolute file path of the Rust source file in which it is invoked
-
autoproto
Replacement derive macros for
prost::Message, and supporting traits and types to make implementing this trait easier -
hexga_tools
miscellaneous stuff, when somethings will be too big it will be on a separate crate
-
debug_with_context
context-aware
Debugformatting via a custom derive macro -
thread-object
Abstraction over thread-local storage allowing dynamic creation of TLS variables
-
jaarg
It can parse your arguments you should use it it's called jaarg
-
axum-error-object
Result<T>type and related utility types that can be used to holistically provide object response errors -
el-macro
a dumb macro collection for anti-idiomatic rust programming
-
transient
Reimplementation of
std::any::Anywith support for non-'statictypes -
cmake-parser
parse cmake language
-
virtue
A sinless derive macro helper
-
card-stack
The Stack for card games
-
head-tail-iter
An iterator that repeatedly splits head & tail
-
cenum-utils
A minimal library for querying enum properties in const contexts
-
puniyu_plugin
puniyu 的插件模块
-
field33_rdftk_names_temporary_fork
set of modules that contain the
IRIs andQNamestrings for commonly used vocabularies. It also provides macro support for defining new namespaces in the same style as this library. -
cel-cxx-ffi
FFI bindings for the cel-cxx crate
-
uinput-ioctls
Rust bindings for Linux uinput ioctl constants and helper macros
-
http-derive
Derive macro for implementing
Into<http::StatusCode>for your enums using the standard http types -
moro
Experimental structured concurrency support for async Rust (similar to trio's nurseries)
-
static-dispatch
Implement a trait for an enum, where all variants implement the trait
-
wizify
A macro library for generating a creation wizard from a struct
-
postmortem
A validation library that accumulates all errors for comprehensive feedback
-
enum-values
Exposes enum values via reflection
-
vcell
Cellwith volatile read / write operations -
mvutils
made from commonly used functions in my projects
-
supply
Provider API for arbitrary number of lifetimes
-
event-listener-primitives
Low-level primitive for building Node.js-like event listeners
-
thiserror_string_context
Adds context string to error enums generated with thiserror
-
overloaded_literals
Overloaded Literals to construct your datatypes without boilerplate and with compile-time validation
-
pyo3_special_method_derive
Automatically derive Python dunder methods for your Rust code
-
methods-enum
Two macros for easy implementation of 'state' design pattern and other dynamic polymorphism using enum instead of dyn Trait
-
copyvec
A contiguous growable array type, with a fixed, stack-alllocated capacity that implements Copy
-
bhc-intern
String interning for efficient symbol handling
-
cashly
一个简要投资记录法的 DSL 脚本解析器, 这个库包含 EBNF 设计和 rust 的实现
-
ra2-mix
Red Alert 2 MIX file format library for reading and writing MIX archives
-
filterstruct
macro for creating struct instances with ergonomic syntax, useful for filters
-
with-cell
More convenient Cell for non-Copy types
-
unwrap-ord
Wrapper type to easily convert Ord to PartialOrd. inspired by std::cmp::Reverse
-
pathogen
Typed references and deep mutation into Rust types
-
version
A very simple library who's job is to return the version of your crate if you're building with Cargo
-
fmt2io
A bridge between std::io::Write and std::fmt::Write
-
errata
Ergonomic pretty error handling for binaries
-
value-extra
A tri-state Patch<T> type for partial update semantics — distinguishing between 'has value', 'absent', and 'explicitly null'
-
ffizz-passby
FFI helpers for implementing pass-by-value and pass-by-pointer
-
dess
Differential Equation System Solver (DESS) is a Rust crate implementing fixed-step and adaptive-step solvers and designed especially for modeling physical systems. Seven explicit ordinary differential equation (ODE)…
-
cell
A replacement of std::cell::RefCell adding advanced support for mapping borrows
-
gan
Just do it! A small tool provides ergonomic value handling with ignore/ ok/ some semantics
-
erased-discriminant
Type-erased version of core::mem::Discriminant<T>
-
relax
Derive Partial<T>
-
erg_linter
the Erg linter
-
enum_index
Trait and macros for extracting Enum variant index
-
assert_unordered
A direct replacement for
assert_eqfor unordered collections -
dyn_compatible
Dyn compatible marker
-
app-error
Error type for applications
-
linspace
Turns a range into a linearly spaced sequence of values
-
defer-heavy
A versatile and easy to use defer statement for Rust. Similar to Go's or Zig's defer.
-
aliri_braid
Improve and strengthen your strings by making them strongly-typed with less boilerplate
-
culit
Custom literals
-
inline-option
A memory-efficient alternative to Option that uses a pre-defined value to represent None
-
pin-init
Safe pinned-initialization in Rust
-
nolife
open a scope and then freeze it in time for future access
-
onlyerror
Obsessively tiny error derive macro
-
oneline-eyre
A fork of
simple-eyrewhich outputs errors on a single line -
typemap-meta
compile-time macro to create type-to-value maps
-
hexga_map_on
Define the map_on! macro that can be used to impl a lot of trait quickly using macros
-
stecs
Experimental static compiler-checked ECS library
-
emboss_common
Common types and constants for emboss
-
decurse
Macro to make recursive function run on the heap (i.e. no stack overflow).
-
width_counters
Atomic counters with variable bit widths and customizable atomic ordering
-
battler-wamp-values
WAMP value types
-
interpolate
form of string interpolation
-
derive-alias
Alias multiple derives as one
-
struct_to_array
Convert between homogeneous structs and fixed-size arrays
-
enumx
Ad-hoc enum extension
-
layer-rs
Effect-TS like type level DI container in Rust, with O(log n) get and insert
-
enumtrait
macros for polymorphism using enums
-
unocss-classes-utils
Utils for
unocss-classes -
projecture
Easy arbitrary type projections without proc macros
-
wiwi
Stuff™
-
stringlit
A macro to convert from str to String
-
io-enum
#[derive(Read, Write, Seek, BufRead)] for enums
-
plist_ffi
C FFI for the amazing plist crate, compatible with libplist
-
facet-error
thiserror replacement powered by facet - derive Error trait from doc comments
-
fgoxide
Utility/QoL code for writing command-line / file processing tools
-
coinduction
Attribute macros for defining circular type references and recursive trait implementations in Rust
-
skedge
Ergonomic single-process job scheduling for Rust programs
-
read_lines_into
Read lines (from a Path, File, etc.) into a struct (a String, a Vec<String>), and with various ways to handle line endings and whitespace
-
xmacro_lib
macro engine for producing multiple expansions
-
sod-actix-web
Service Oriented Design - Actix Web
-
kmacros
Useful macros
-
rust-analyzer-modules
analyzing a Rust crate's module structure and dependencies (fork with rust-analyzer 0.0.289 support)
-
jsmoke_macros
JSmoke personal macros
-
aspect
Toolkit for Rust
-
reax
A reactivity system for Rust that infers dependencies between functions
-
better_unwrap
A trait providing clearer alternatives to unwrap() methods: or_panic(), panic_or(), panic_or_else(), panic_or_default(), and panic_with()
-
enumly
procedural macro that exposes a compile-time static list of all variants of an enum
-
containing
Newtypes for dealing with collections that are guaranteed to be non-empty
-
thin_cstr
An experimental crate which provides a truly thin std::ffi::CStr
-
speedy_refs
A collection of simple and fast and useful smart pointers
-
tagged-vec
A Vec which can be indexed by one specific type
-
strck_ident
Checked owned and borrowed Unicode-based identifiers
-
element-ptr
A macro to make accessing elements through raw pointers easier
-
limnus-local-resource
local resource storage
-
winit-main
Abstract away winit's event-loop inversion of control
-
ravenlang
Language core for ravencheck
-
magic_static
Global singletons initialized at program start, an alternative to lazy initialization
-
accursed-unutterable-type-id
A worse version of std::any::TypeId
-
sql_tool_core
这个库是 sql_tool_macros 库的核心,存储 trait
-
simple_scan
Iterator extensions for simple scan operation
-
advent_of_code_traits
Minimal, flexible framework for implementing solutions to Advent of Code in Rusts
-
adjacent-pair-iterator
An iterator over adjacent pairs in another iterator
-
softfloat-sys
Rust bindings for Berkeley SoftFloat 3
-
iterpipes
Compositional, pipes-style stream processing
-
only_one
OnlyOne trait, which allows less nesting when chaining results
-
scoped-panic-hook
Adds scoped, nestable, thread-local hooks for panics and some utilities for capturing and analyzing panics more conveniently
-
mopa
My Own Personal Any: get your own Any with additional functionality
-
float_plus
Additional features for float values
-
exhaustive
The trait for generating all values of a type, and a property-based test macro
-
more-di
support for dependency injection (DI)
-
simplerror
A zero-dep macro to declaratively define error enum types and their common trait implementations
-
slugify-rs
generate slugs from strings
-
rtlola-frontend
A frontend for the RTLola runtime verification framework
-
bounds
interact with bounded and unbounded ranges
-
steel-parser
Parser for use within steel
-
primitive-from-enum
macros for get primitive enum from complex
-
n-functor
Faux-derive a
mapfunction for types with one or more type parameters -
close-err
Add .close() to file-like types, for error handling
-
rs-pkg
rust pkg for programming
-
drop-with-owned-fields
Safe and sound owned access to a
struct’s fields inDrop: no moreunsafeusage ofManuallyDrop! -
ice_code
A macro to mark code paths as cold, allowing the common case to be inlined
-
cgp-error-eyre
Context-generic programming error handlers implemented using eyre
-
string-literals
Rust macros to more easily create String types
-
iced_utils
A collection of useful functions and macros for Iced
-
dialogue-macro
An extension to dialoguer that simplifies command-line interaction interfaces
-
nanoneo
lisp-like dsl which "compiles" into html
-
iced_af
The iced application framework project
-
defmac
A macro to define lambda-like macros inline
-
rustfmt_lib
Rustfmt as a library
-
derail-report
Tools for reporting
derail::Errors -
butcher
An easy way to interact with structs and enums wrapped in Cows
-
fast-rustc-ap-rustc_parse
Automatically published version of the package
rustc_parsein the rust-lang/rust repository from commit 15812785344d913d779d9738fe3cca8de56f71d5 The publishing script for this crate lives at: https://github… -
koute/nes
emulator written in Rust
-
summum-types
A sum-type macro crate with all the conversions, accessors, and support for abstract methods across variants, and interoperability between sum-types
-
animatron
Animation state management
-
is-odd
Returns true if the given number is odd
-
tao-of-rust
《Rust编程之道》随书源码
-
maybe-single
A singleton. Maybe.
-
flatty-portable
Flatty portable trait and primitives
-
xjbutil
A xjbly created utility library for my own use
-
thread-scoped-ref
that is similar to a thread local storage but allows to store references / dyn Trait within a scope
-
steckrs
A lightweight, trait-based plugin system for Rust applications and libraries
-
hello-world-in-rust
Hello World!
-
flip-flop
implements the flip-flop operator from Perl and Ruby as a Rust macro
-
defer-rs
Deferred execution Rust utilities
-
better-refcell
A drop-in replacement for RefCell with safe unborrow and reborrow capabilities
-
devela_base_core
base shared functionality for devela
-
ellie_tokenizer
Tokenizer for ellie language
-
lerpable
a derive macro for combining ADTs
-
silx-types
aSynchronous Interactive calcuLation eXecutor: an easy to use executor for asynchronous and interacting processes
-
higher-kinded-types
"Generic generics" / higher-kinded APIs in stable Rust
-
estimate_size
Replaces an iterator’s
size_hintwith a custom value -
hermit-sync
Synchronization primitives for kernels
-
grug-rs
Safe bindings for https://github.com/grug-lang/grug
-
swamp-script-error-report
Swamp script error report
-
lachs
automatically creating a lexer based on a given enum
-
type_cell
Attach values statically to a type using static get/set methods
-
compiler_builtins
Compiler intrinsics used by the Rust compiler
-
field33_rdftk_core_temporary_fork
core RDF data model; concrete implementations for Statements and Literals, along with a Resource type that provides a builder-like experience for models
-
auto_ops
Macros for easy operator overloading
-
dioxus-shareables
Hooks for sharing structures between components
-
auto-impl-ops
semi-automatic implementation proc-macro for binary operations
-
iderive
Drop-in replacement for derive that doesn't directly depend on generic bounds
-
valued-enums
Macros collection and specify trait for creating valued or python-like enums
-
diode
Core diode library
-
core-nightly
Nightly build of libcore from the rust repo
-
strand-cam-enum-iter
provide an EnumIter trait for iterating over enums in the Strand Camera ecosystem
-
racros
Collection of rust macros
-
assert-within
Macro for testing that (generic) floating point numbers are within some tolerance
-
from_variants
Rust macro to automatically generate conversions for newtype enums
-
friperms
framework for creating typed permission models for whatever system you could phatom
-
error_status
Model common error context with HTTP 4xx and 5xx code
-
traceback-error
aims to make error handling and tracing easier
-
variant_counter
Rust's Enum variant counter
-
dbus-strings
Rust native implementation of different D-Bus string types
-
smooth-operator
Procedural macro that transforms regular infix arithmetic expressions into checked arithmetic expressions
-
simple_parse
A declarative converter for Rust type to and from binary
-
manylists
Many lists
-
permitit
Cute little library to permit a specific error
-
ruroonga_command
A tiny Groonga query builder and generator
-
rustils
Utilities for rust
-
type-uuid
Safe, stable IDs for Rust types
-
namable_closures
types and macros to create namable closure types
-
utilz-rs
A lightweight extension trait collection for Rust primitives and types
-
track-error
serveral convenient macros to track the location of error where it first happened
-
scoundrel
An engine for working with ASCII roguelikes
-
delfi
Conveniently writing data to csv-files
-
imgref-iter
A small crate for iterating over the rows or columns of
imgrefbuffers -
rust_generator
generator base on async rust! No experimental needed!
-
bestbefore
A procedural macro for marking code with expiration dates
-
castle_types
all Castle types for Castle_Api
-
strprintf
Provide a way to interpolate printf-style format strings using native Rust types. Part of libnewsboat lib dependencies
-
comprehensive_dns
A DNS resolver for https://crates.io/crates/comprehensive
-
aidanhs-tmp-parse-generics-shim
A stable shim for the proposed RFC #1583; provides macros for parsing generics and where clauses
-
size_hinter
Iterator adaptors allowing overriding or specifying size_hint
-
tagged-id
A zero-cost wrapper adding type-safety to resource identifiers
-
handybars
Minimal template parsing and expansion
-
set_derive
Using Macros to Implement List comprehension Similar to Python Language
-
moving
Make elements of an array or a vector movable
-
guarded
Guard macros
-
jsonerr
macro and builder
-
destruct
structs and enums for simpler combinator implementation
-
iter_fixed
Iterator of fixed length
-
autotrait2
generate trait definitions from impl blocks
-
tiny-ordered-float
Tiny version of OrderedFloat
-
nekopas2rust
-
service-builder
A lightweight, type-safe service construction library for Rust that provides compile-time dependency injection through builder pattern
-
ankiconnect-rs
A package for convenient interaction with AnkiConnect
-
cuadra
layout types
-
effective
An effects library, an alternative to keyword generics
-
easy-int
macros for easy implementation of integer aliases
-
bitread
in Rust is designed to efficiently convert small binary data into Rust structs
-
printc
Print-clean macro. Like
println!but cleaner input. -
nz
Collection of 100% safe macros for creating non-zero integers more easily
-
hkalbasi-rustc-ap-rustc_abi
Automatically published version of the package
rustc_abiin the hkalbasi/rust repository from commit e77366b57b799dfa3ce1fcb850c068723a3213ee The publishing script for this crate lives at: https://github… -
trustmebro-macro
A macro that wraps arbitrary tokens in an unsafe block
-
hexspec
A dsl for creating and verifying byte buffers
-
maybe-trait
Allows writing functions which are polymorphic over taking an option
-
hado
Monadic do notation using a macro
-
flow-control
Declarative macros for common flow-control use cases such as break, continue, and return
-
pubserve
generic observer trait
-
posix-errors
Posix error codes and handy functions for using them
-
partial-borrow
Partially borrow a struct
-
undo_stack
A minimal undo stack for user defined types
-
merge-hashmap
Merge multiple values into one
-
refl
reflencoding which you can use to provide a proof witness that one type is equivalent (identical) to another type. You can use this to encode a subset of what GADTs allow you to in Haskell -
stated-scope-guard
A more flexible RAII pattern for stated resouce management
-
cond
Rust macro to use a match-like syntax as an elegant alternative to nesting if-else statements
-
hex-display
Display impl for byte slices which provides a hexdump
-
fruit-salad
Compare apples and oranges (and more). Trait object reference casting and trait object comparisons.
-
ltptr
Checked raw pointers
-
cantor
A general toolkit for working with types that have a small number of values
-
cel-core
High-level API for the Common Expression Language (CEL)
-
rombok
boilerplate generation macros like lombok
-
mikro
embeddable mikro interpreter for Rust apps
-
dilib
A dependency injection library for Rust
-
es-fluent-lang
Opinionated crate for adding variants to a Language Enum
-
tamanegi-error
detail of
tamanegi-errorcrate -
vector3d
3D vector type
-
os-thread-local
OS-backed thread-local storage. This crate provides a
ThreadLocaltype as an alternative tostd::thread_local!that allows per-object thread-local storage, while providing a similar API… -
intuple
Convert structs and enums into tuples (of refs) and back - recursive, ignore fields
-
nanopre
A a zero-dependency, no-unsafe implementation of a minimal C-style text preprocessor
-
builderx
A concise builder-pattern UI DSL for Rust
-
cmdstruct
A lightweight macro for implementing commands with a struct
-
assure
macros for Rust runtime checks and error handling
-
cjtoolkit-structured-validator
validating structured data
-
sptr
Strict Provenance Polyfill
-
slice-of-bytes-reader
Turns an iterator of
AsRef<[u8]>into a reader implementsstd::io::Read -
prev-iter
Iterator which allows you to view the previous element
-
phantasm
Small lib that helps with variance
-
thiserror_core2
derive(Error) (no_std-enabled using core2)
-
retry-backoff
Retry Backoff
-
non-empty-slice
Non-empty slices
-
return-ok
Macros for dealing with Options and Results where you shouldn't
-
standalone-proc-macro2
Fork of proc-macro2 that uses rustc-ap-proc_macro so as to remove the rustc dylib dependency
-
docpos
Compact-document items after defining them (fn, struct, enum) + document fn parameters with rustdoc (⑂roxygen)
-
solution
Some macro for automatically generate student and teacher version of rust exercise
-
pyprint
enable python-style printing in rust
-
extent
replacement for std::ops::{Range,RangeInclusive}
-
read_buffer
ReadBuffer, a wrapper to safely read into a buffer from a Read
-
brain_flak_macro
Brain-Flak macro
-
lagoon
A thread pool crate with an array of features
-
min-max
max! and min! macros
-
v8_derive
Derive macros and helpers for Rusty v8
-
scientisto
A light-weight Rust implementation of the github/scientist library used for careful refactoring of critical code paths
-
state-department
state management and dependency injection in Rust
-
iter-enum
#[derive(Iterator, DoubleEndedIterator, ExactSizeIterator, Extend)] for enums
-
dyn-dyn
Flexible trait object downcasting using ptr_metadata
-
tryvial
Small crate for ok-wrapping and try blocks
-
loso-inject
A compile-time dependency injection framework for Rust with zero runtime overhead
-
jthread
Deadlock-free Mutual Exclusion locks for Rust
-
bongonet-error
Error types and error handling APIs for Bongonet
-
gostd_builtin
Package builtin binds the basic type in go through the type alias, and implements the basic type cast macro function.builtin 包通过类型别名绑定Go中的基础类型,并实现了基础类型强制转换宏函数…
-
rustc-ap-syntax_pos
Automatically published version of the package
syntax_posin the rust-lang/rust repository from commit 625375400cdd172877e81c3ce44ce68f2011af2d The publishing script for this crate lives at: https://github… -
cryo
Extend the lifetime of a reference. Safely.
-
partial_application
partial function application via the partial! macro
-
fallible_map
fallible mapping over
Optionand iterators using functions that can returnResults -
curerr
easy error handling
-
slice_trait
A generic trait for any slice, with item as a type parameter
-
tokio-inherit-task-local
Task local variables for tokio that can be inherited across a spawn
-
rusty-bind-parser
Parses Rust module, generates Rust code with C ABI bindings and C/C++ header files and Swift gluecode
-
as-result
Traits for converting types which may be interpreted as or into a result
-
enough
Minimal cooperative cancellation trait for long-running operations
-
ps-util
aims to provide generally helpful utility functions and traits
-
gravitron_macro_utils
Gravitron's Macro Utils
-
cprint
Cargo-like print
-
tosserror
derive(Toss)
-
to-display
A trait that is Display or can be converted to Display
-
nu-errors
Core error subsystem for Nushell
-
crusty_traits
that creates a macro and supporting code to allow for traits to be FFI-safe using C ABI
-
rewrap
Result<Result<T, E>, F>->Result<T, F> -
mac
A collection of great and ubiqutitous macros
-
async_fn_traits
Trait synonyms for “Fn[…]”-trait bounds returning futures
-
uwuizer
Rust Macro to UwUize your text. UwU.
-
rformat
Runtime formatting library
-
num-sign
enum Sign { Positive = 1, Negative = -1 }
-
enum_macro
Useful macro for enum
-
hex-slice
Extends the std::fmt::*Hex traits to slices
-
bherror
TBTL's library for error handling in Rust
-
anyanymap
Macro for building any Type Map with a standard interface
-
derive_fn
Macro to implement all three Fn traits
-
failchain
Ergonomic companion library for failure
-
squote
A clone of the quote crate that uses a String as its backing store
-
ts-error-stack
error stacks for better reporting
-
high_mem_utils
bunch of mem safe abstractions,some involving transmute
-
enum_reflect_extern
Traits for enum_reflect
-
shared_singleton
trait provides singleton pattern state management with shared container
-
nyar-error
Error types for valkyrie language
-
swamp-types
types used in Swamp
-
useful_macro
Collections of useful macros
-
diesel_derives_traits
Traits for diesel_derives_extra
-
flatty-base
Flatty traits and primitives
-
koruma
The koruma crate
-
unused
Allows for unused generic parameters that do not act like they are owned
-
recore
A re-implementation of various ::core features
-
or-panic
unwrap or panic
-
combin-iterator
Some usefull facilities for combining iterators
-
err-per-field
A more fine-grained control over field-level error handling
-
ebacktrace
error wrapper which captures a backtrace and can carry an optional textual description
-
pud-macros
Generate typed, composable, no-std-friendly modifications (“puds”) for Rust structs
-
impl_ops_cmp
Macros for easy operator overloading without Copy derive
-
composable
Easy composition of functional traits, functions or closures
-
apply_attr
A syntax extension providing higher-order attributes to Rust
-
range_checker
derive-macro crate aimed to provide declarative bounds checking and filtering for structure
-
ohos-ime-sys
Bindings to the
inputmethodAPI of OpenHarmony -
iter-identify_first_last
A helper iterator, flagging first and last elements
-
functor_derive
A derive macro to derive a functor for a type
-
rustato
A global state management library for Rust applications
-
koicore_ffi
FFI bindings for koicore
-
try-clone
Fallible cloning
-
no-break
Typesafe extraction of continuation values from unbreakable control flows
-
ffi-enum
Simply write and use
enums like rust native enums, freely passing through ffi -
zlink-core
The core crate of the zlink project
-
anthill-di
Rust di containers system
-
const-type-layout
Derivable const trait to view and compare the layout of a struct, union, or enum
-
assert_hex
display assert panics in hexadecimal {:#x?} format
-
const-util
Stable implementations for some missing const functions
-
io-read-line-prototype
Prototype for io::read_line
-
n-observer
An async/await observer pattern implementation
-
dddk_security
Security module of dddk_core. Impl features regarding command_bus pattern and security
-
error_def
syntax extension for generating error-handling boilerplate code
-
try_utils
The try! macro descends into an enum variant. It's more flexible than ? and unwrap(), and it works with your enum, too!
-
test-with-tokio
attribute macro for tests using tokio with cases and async guards
-
lib_utils
Misc utility functions
-
rmp-ipc
IPC using Rust MessagePack (rmp)
-
cli-panics
Make your panics easy to read
-
streamx
Stream extensions
-
ab-code-gen
Functions to generate boilerplate code for objects implementing the 'Actor' pattern. Used by the abcgen crate.
-
illicit
An implicit thread-local environment which is indexed by type
-
ghost-lite
custom PhantomData types
-
handlevec
Small abstraction over index-style iteration over a vector, with deletion, insertion, and other operations on the vector while iterating
-
flexpiler
Deserialiser aiming at high customizability
-
rten-base
Shared utilities for the rten family of crates
-
nyar-number
Numeric types with GC optimization
-
anyhow-std
Wrap std APIs with anyhow error context
-
aorist_primitives
Primitive macros for the aorist project
-
nonicle
Tools for type-safe, canonical data representations
-
log_err
Log error messages from Unwrap and Expect with log crate
-
podio
Additional trait for Read and Write to read and write Plain Old Data
-
eager
macro expansion
-
crete
Ergonomic, thread-safe & flexible state management
-
write-to-file
Write to a file, simple helper fn and traits lib crate
-
derive_destructure2_examples
Examples for crate derive_destructure2
-
iter-scan
Iterator scan methods that don't suck
-
tuple_set
Ergonomic utilities for working with Rust tuples by unique types, not position
-
byte-array-struct
Macro to create a byte-array backed struct
-
late-struct
Late-bound structure definitions
-
numeric_literals
Easily cope with numeric literals in generic Rust code
-
unfold-iter
Create iterators with an initial value and a recurrence relation
-
proc_micro
Small conveniences for high-quality macros
-
semval
Semantic validation
-
craby_common
Craby common utilities
-
pagefind_microjson
No frills JSON parsing without allocations
-
ioc
An Inversion-of-Control library in Rust
-
sector
A stateful vector implementation that provides different memory management behaviors through Rust traits and state machines
-
rain_task
Distributed computational framework for large-scale task-based pipelines. A custom task library in Rust.
-
fn-traits
function traits like the standard library ones, but can be used in stable Rust
-
inline_dyn
A container type for storing dynamically-sized types inline
-
infiltrait
A procedural macro that automatically generates trait definitions from implementation blocks
-
byte-strings
Rust byte strings manipulation, for a better and safer C FFI
-
query_interface
Dynamically query a type-erased object for any trait implementation
-
iterator-ext
An extension to Rust's Iterator
-
teo-teon
Object notation for Teo
-
lootr
RPG-like looting system
-
qualified_do_proptest
Proptest integration for qualified_do, enabling alternative sytnax for prop_compose!
-
will_exit
work on program will exit
-
munarkma
Namumark parser
-
weechat
API bindings for Rust
-
enum_downcast
Safe downcasting for enums
-
reflect_to
Run-time type reflection and conversion
-
extension-eyre
Re-export of color-eyre that introduces Extensions (type-map) to eyre::Report
-
cstl-sys
Low level CSTL Rust bindings generated with bindgen
-
game_inventory
An inventory system independant of item data
-
functora
Missing pieces of the Rust standard library
-
kube-core
Kube shared types, traits and client-less behavior
-
ctreg
Compile-time regular expressions the way they were always meant to be
-
raw-parts
Ergonomic wrapper around
Vec::from_raw_partsandVec::into_raw_parts -
inter-struct
Automatically generated traits for arbitrary structs
-
errore
error handling and tracing
-
trait-set
Support for trait alias feature on stable Rust
-
derive-name
Derive macro to get the name of a struct, enum or enum variant
-
anyhow_ext
Extension of anynow
-
comparator
A Java-like Comparator type
-
macro-utils
Some macros to make code writing more elegant and funny
-
stupid_utils
that provides some simple and maybe stupid or useful tools
-
droppable-pin
The eponoymous
droppable_pin!macro around a givenlet var = pin!()declaration allows invokingpin_drop!andpin_set!on the givenvar, which have in turn been designed to avoid silly borrow-checking errors -
slice-utils
A collection of slice utils, like itertools
-
phenotype-internal
Defines
Phenotypetrait forPeapodcrate -
orchidlang
An embeddable pure functional scripting language
-
nshare
Conversion between n-dimensional types in different Rust crates
-
relabs
Type-safe relative/absolute path wrappers
-
rvs
defining and evaluating random variables using a simple DSL
-
phantom-enum
macro library for creating phantom enums
-
floxide-reactive
Reactive node abstractions for the floxide framework
-
loadsmith
Mod extraction and (un)installation utilities for a range of mod loaders
-
rsnark-core
write Zero-Knowledge circuits for multiple prover systems
-
buffer
Safe, write-only, generics-free buffer abstraction
-
darkly
scanf-style scanner
-
linearity
providing various operations commonly found in branchless programming
-
decrust-promac-runtime
The ultimate all-in-one error handling framework for Rust
-
field_names_and_counts
Traits for accessing field names and counts at compile time
-
nonasync
A set of utilities useful for building a non-blocking non-async APIs
-
strum-lite
Lightweight declarative macro for sets of strings
-
enum_variant_macros
Macros to generate From & TryFrom for enums
-
ena
Union-find, congruence closure, and other unification code. Based on code from rustc.
-
rtk-lua
The Lua engine for Rust Type Kit - query Rust types and produce FFI types
-
rudi
out-of-the-box dependency injection framework for Rust
-
suika_utils
A small utility library for the suika web stack
-
smart_access
A minimalistic "lazy bidirectional pointer" framework
-
pipeop
Adding the pipe operator to Rust with a declarative macro
-
enum_discriminant_traits
Internal implementation of traits for enum_discriminant crate
-
pipa
Pipe Operator Library for Rust
-
abstract-getters
Abstract how, what and from where to get a value using a trait
-
typed-builder-macro
Compile-time type-checked builder derive
-
kcr_kpack_io
Kubernetes Custom Resource Bindings
-
shorten
A collection of convenience functions, macros and traits to shorten repetitive code
-
lazy_bastard
A helpfull macro because writeing a seperate Default function is too much effort
-
type-sig
Ever needed to inspect types more precisely? Then this crate is for you!
-
CuPs
Dear Dev, this lib to make custom pointers to amend RowHammer-related issues [kiss principle been at the very heart]
-
multi_stack_queue
Abstraction layer for a stack-allocated multi-queue with bounded length. WIP
-
tailsome
Blanket traits providing
.into_ok(),.into_err(), and.into_some()for happier method chaining -
regexm
macro for writing regex pattern matching
-
keetanetwork-utils
functions and build tools for Keetanetwork
-
panic-message
Get a panic message from a panic payload
-
cpp_utils
interoperability with C++
-
destructure_traitobject
Unsafe helpers for working with raw trait objects. (Forked from traitobject)
-
flex
Flexible borrowing and ownership for Rust
-
common_macros
common macros like
hash_map!orhash_set!(WIP) -
try-guard
A guard! macro inspired by the guard Alternative function from Haskell
-
fields-glob
Derived glob macro with the same name as the structure
-
generativity
Generation of unique invariant lifetimes
-
display_container
implement Display
-
try-blocks
macro to emulate the upcoming
tryblock feature on stable -
cdumay_error_base64
base64 error
-
html5ever_macros
High-performance browser-grade HTML5 parser − compiler plugins
-
shoogah
Add some syntactic 'shoogah' to Rust
-
rexpr
Rust Json Object access Runtime
-
moduforge-macros
moduforge 宏定义
-
casual
parsing user input
-
variants-data-struct
A derive macro to convert enums into a struct where the variants are members and types are that that of variants data
-
concat_const
const
&[u8]and&strconcatenation -
cdumay_config
configuration manipulation and export
-
permission_check
A relatively flexible permission checking library written in rust which checks for permission is scope (like: org.1028.user.*.write), with macro for compile time type checking and code generation
-
shared-expiry-get
concurrent async get with expiration for Rust
-
lazymut
Similar to LazyCell, but use &mut self to get or initialization
-
tauri-plugin-keygen-rs
Tauri plugin for Keygen.sh licensing, based on keygen-rs
-
data_models
used to lookup the sizes of various C-types of historical data models
-
overflower
A compiler plugin to easily select overflow behavior for all integer operations of an item
-
difficient
Efficient, type-safe, zero-allocation structural diffing
-
scope
A high-assurance framework for scoped lifetimes and deterministic execution boundaries. Part of the Honest-Classified security suite.
-
safebit
Safe and secure bit access into integer types
-
split-spare
A trait to allow referencing the already initialized part of a collection while pushing into it's reserved capacity
-
pretty-panic
nicer panic messages
-
home-prelude
Prelude library to support home applications
-
standback
New standard library, old compiler
-
vnum
Create enums with a constant value associated to every variant
-
fb_stats
Stats library
-
rvstruct
A helper macros implementation for Value Classes in Rust
-
enum_is
Enum helper derive: auto-generate is_<variant>() methods for enums
-
anyerr
Dynamic error library with rich error wrapping and context support
-
murrelet_livecode_macros
livecode macros for murrelet, a livecode framework
-
dyn-eq
Test equality between trait objects
-
entrypoint
opinionated application framework/wrapper that eliminates main function boilerplate
-
fn_meta
Returns metadata about a function at runtime
-
utils-results
The easiest and most intuitive error handling solution
-
atruct
macros for anonymous structs in Rust
-
rstgen
Even simpler code generation for Rust
-
simple_detailed_error
Stack and specify errors explainations saying what happened, why, how, where, how to solve it and its causes
-
prealloc_ref_vec
Create temporary
Vecs of references without allocating/deallocating (useful for realtime code) -
c2r
A C to Rust conversion program
-
static_file_util
generating and managing static files in Rust applications
-
inline-const
Inline consts implemented as a macro
-
yield-return
Implement a coroutine like C#‘s
yield returnusing Rust’sasync,await -
lazybe
Handy CRUD boilerplate macros and utils for Rust backend
-
colback
Column backed structs
-
xylem
Building context-sensitive type conversion
-
lyneate
beautiful code underlining and error reporting
-
typesafe-builders
Infallible compile-time checked builders for your structs
-
scoped_thread_local
Highly flexible Scoped thread local with HKT builtin
-
ptr-utils
A lightweight library providing utilities for working with raw pointers
-
derive_builder_fork_arti
Rust macro to automatically implement the builder pattern for arbitrary structs
-
jni-toolbox
tools to make writing JNI native functions less tiresome
-
stable-eyre
A custom context for eyre that supports capturing Backtraces on stable
-
mini_macro
helper mini macros
-
myopic
A possibly bad lens library for Rust
-
barexp
that automatically generates mod.rs files for your project
-
wraps
create marker types that wrap other, inner, types - with trait impls matching PhantomData
-
gazebo
A collection of well-tested utilities
-
const-zero
a const mem::zeroed
-
backyard-nodes
Nodes representing PHP code AST
-
almost
comparing floating point numbers
-
mutcy
Zero-cost safe mutable cyclic borrows using borrow relinquishing
-
airbag
handling errors and panics using 3rd party services
-
partial-default
PartialDefault, a trait similar to Default but with fewer guarantees
-
ez-err
error handling library with support for ergonomic and fast error handling
-
tuple_utils
A set of utilities to enable higher level operations over tuples
-
filedescriptor
More ergonomic wrappers around RawFd and RawHandle
-
try-lazy-init
Fallible lazy initialization
-
selfref
Semi-pain-free self-referential pinned types
-
messages
Runtime-agnostic actor library
-
big_mac
A metamacro toolkit for writing complex macros
-
sketchddd-parser
DSL parser for SketchDDD domain models
-
unsafe-fields
unsafe to access or modify fields with safety invariants
-
explicit-error-exit
Explicit concrete Error type to manage errors that end a process/program
-
enum-repr
Derive enum repr conversions compatible with type aliases
-
peak-result
trait that extends the standard Result enum to allow you to run some code in case of error or success
-
diva
Opinionated convenience wrappers for
std::process::Commandand friends -
rust-tailcall
TailCall, The crate is a rust implementation of The Art of Simplicity_Venkat Subramaniam
-
aoko
extension library
-
num-notation
Offers multiple numeric choices, allowing you to work with various number representations including StandardForm, fractions, and f64 floating-point decimals. This versatile crate empowers…
-
from-string
that provides a FromString trait with a String to String noop
-
webidl-utils
working with the WebIDL AST, by extending weedle2
-
omitty
On-demand TypeScript-like Omit<> for Rust - generate type variants with omitted fields using #[omitty] and Omit! macro
-
rs_state_machine
A business-oriented state machine library
-
shallowclone
Traits for working with copy-on-write types more efficiently
-
pochoir-lang
Custom parser and interpreter for the pochoir template engine
-
generic-builders
Builders to wrap structs that don't have any
-
modwire
Tools for module organisation
-
clamp_to
Clamp integer and float values to the values that fit within both the original number type and the receiving type
-
matches2
A macro to evaluate, as a boolean, whether an expression matches a pattern
-
map_box_from
Adds
Box-ed versions ofFromandIntotraits - allowing implementations for unsized type parameters and following looser guidelines -
nvim-oxi-types
Rust bindings to types used by Neovim's C API
-
toml_config_trait
Rust trait to turn a Rust struct into a TOML config
-
readonly
Struct fields that are made read-only accessible to other modules
-
write-into
A trait to write things into io::Write
-
type_description
Machine-readable type descriptions
-
rx_core_subscriber_higher_order_exhaust
exhaust subscriber for rx_core
-
dungeon-cell
Store (almost) any value as one type without dynamic memory
-
enumorph
Derive macro to generate
TryFromandFromimplementations for converting between newtype enum variants and their wrapped values -
totally-ordered
No dependency, no-std totally ordered f32/f64
-
derive-ctor
Adds
#[derive(ctor)]which allows for the auto-generation of struct, enum, and union constructors -
ownref
Provide the smart pointer type that bundles the data with its owner
-
gqls
GQL Schema, with support for ORB-style API generation
-
pisserror
A golden rip-off of thiserror
-
function_overloading
that adds function overloading
-
cart_prod
Cartesian product of iterators
-
io-ensure
Prototype of the
std::io::ensurefamily of macros -
unstacked
Lock-free, no-std concurrent stack for Rust
-
rust-quiz
Medium to hard Rust questions with complete explanations
-
throw
Efficiently add statically-calculated stack traces to errors
-
chainer
A cursed crate that allows for global call chaining with access to chained function results
-
assert_has_field
macro for checking if a struct has a specific field
-
in
Python's input() for Rust
-
easy_complex
Complex numbers crate
-
visit-rs
A generic visitor pattern library for Rust
-
ty-tag
TypeId for lifetime containing types via type tags
-
panicmsg
simplyifying common panic messages
-
retry_macro
A set of declarative macros which retries executing a function upon failure
-
roopert_macro_common
object-oriented toolkit for Rust (common data)
-
validator-async
Common validation functions (email, url, length, …) and trait - to be used with
validator_derive -
tracked
A stringly-typed Error that includes
#[track_caller]information -
loop-let
An immutable loop structure that can be used as an expression
-
fed
A sketch implementation of anonymous, tagged unions in stable Rust
-
newtype-ops
Mass-derive many operators for newtypes. Wartier than newtype_derive.
-
meta_tuple
A statically typed opaque tuple that can contain any type
-
byteorder_slice
Byteorder like crate for &[u8]
-
safe_unwrap
allows unwrapping and annotating that the unwrap will never fail. Does not require
std. -
global-mockable
creating global mockable objects
-
async_ui_internal_utils
for internal use only
-
rustrix
Supports macro and basic operations for matrix
-
opentalk-roomserver-types-meeting-report
Opentalk RoomServer Meeting Report Types
-
rbx-rsml
A lexer and parser for the RSML language
-
ever
Print the build information of your program with minimal boilerplate
-
anon_iter
Return different Iterator types from function returning
-> impl Iterator -
ensure_impl
Trait implementation assertion
-
replace_err
Adds a
replace_errmethod toResultwhich throws away the current error and replaces it -
timeout-macro-parse
A companion-crate for the tokio-timeout proc-macro-lib
-
env_var_helpers
Macros and functions that help provide access to environment variable values
-
impl-macro
Macro reducing boilerplate of similar impl declarations
-
specx
Minimal Specification pattern utilities for Rust with composable predicate specs, boolean combinators, and a micro-DSL
-
atomint
Trait for mapping integer types to their corresponding atomic types
-
mapper
Mapping macro to help to reduce mapping boilerplate
-
impl-converter-helper
declarative macro library to help you implement the
FromorTryFromtrait for your type -
oneshot-fused-workaround
Fused wrapper for futures::channel::oneshot
-
concrete-type-rules
Rules and validation for concrete types
-
throwing
Create explicit errors easily with a handy macro
-
tcrts
Turing complete rust type system
-
emscripten_rs_sys
Bindgen-generated bindings to all public emscripten functions
-
clone-behavior
Bound the semantic behavior and time complexity of cloning a value
-
derive_screaming_snake_case
A lightweight Rust proc-macro crate that implements the Display trait for enums with unit variants by converting each variant's name into SCREAMING_SNAKE_CASE
-
tuppipe
pipe operator-like implementation using tuples in Rust
-
hexga_utils
miscellaneous stuff, when somethings will be too big it will be on a separate crate
-
liftor
Functors for Rust lifetimes
-
ambient-authority
Ambient Authority
-
cell-project
Safe interface for cell projection
-
non-empty-iter
Non-empty iterators
-
featureflag
Runtime feature flagging for Rust
-
cove
Casts Of Varying Elegance (COVE): extension traits for casting numerical types
-
var_num
Variable length number implementation that can be used as a drop in replacement for any number primitive
-
int-to-c-enum
TryFromInt - A convenient derive macro for converting an integer to an enum
-
fn_name
Macros that produce the name of the function they're invoked within
-
conditional-mod
macro for conditional module visibility
-
simple-newtype
newtype macros for application development
-
inherent
Make trait methods callable without the trait in scope
-
enum-struct
Add shared fields to each variant of the enum
-
serde-nixos
Generate NixOS type definitions from Rust structures
-
declarative_enum_dispatch
Declarative macro generating boilerplate for enum dispatch
-
derive_macro_xiaochufuji
A custom derive macro collection by xiaochufuji
-
thistermination
add the Termination trait to error enums inspired by thiserror
-
anyhow-source-location
Two simple macros that make it easy to add the source location to the anyhow context errors
-
dynamic-provider
Dynamically request arbitrarily-typed values from providers with borrowed data
-
is_empty
Easily check if the struct is empty
-
check
Convenience assert!-like macros which return instead of panicking
-
array-bin-ops
Efficient array binary operations
-
ferrite-session
Session Types DSL for Rust
-
kvtree
Heterogenous in memory key value tree storage
-
rustapi-validate
Type-safe request validation for RustAPI. Wrapper around the
validatorcrate with deep framework integration. -
facet-path
Path tracking for navigating Facet type structures
-
metatype
Helper methods to determine whether a type is
TraitObject,SliceorConcrete, and work with them respectively -
zucchero
Minimal macro for globally shared, type-safe singleton
-
rustc-tools
Some internal rustc tools made accessible
-
iter-n
functions returning impl Iterator to return one of several distinct types
-
twisterl-rs
Reinforcement learning primitives and a Python extension for high performance training and inference
-
transitionable
A no_std compatible type to transition
T -> Twhere you have an&mut T -
aoc_driver
helper macros and functions for AoC
-
veho
a iterable toolset
-
diatom-std-core
Diatom core standard library
-
typenum-consts
Procedural macros that take a literal integer (or the result of an evaluation of simple mathematical expressions or an environment variable whose value is a literal integer) and convert…
-
benri
Convenient macros wrapping the standard library
-
sqlx_query
Expands to either sqlx function
queryor macroquery!call depending onsqlx_compiletime_checkshas been enabled during the build -
hexga_math
Math related crate that define number and casting, and support array programming
-
stuff
Stuffing things into pointers
-
valkyrie-types
Shard types for valkyrie language
-
qed
Compile-time assertions
-
test_help-rs
Test helpers for Rust
-
base64_type
type wrapper for Vec<u8> that uses base64 for serialization
-
anywrap
error handling mechanism with pseudo-stack traces implemented through SNAFU, the proc macro trace_error, and the DebugTrace trait, inspired by GreptimeDB
-
re_unwrap
An unwrap macroset for types Result<T, E> and Option<T> with several options for using alternativly to matches
-
cause
A generic [std::error::Error] implementation
-
os_str_bytes
Lossless functionality for platform-native strings
-
trait-enumizer
Proc macro to automatically generate enum based on method signatures (with appropriate helpers)
-
concat-in-place
Efficient macros for concatenation of strings and vectors
-
bearive
some derive macros i wrote
-
displaythis
derive(Display)
-
transpose-future
Transpose Option<impl Future>
-
cdumay_error_standard
define standard errors
-
error_mancer
Quickly define custom error enums for a function
-
zed-refineable
A macro for creating 'refinement' types that can be used to partially initialize or mutate a complex struct
-
konst_macro_rules
detail of the konst crate
-
maybe_path
Zero overhead static initializer for Path
-
crossdylib
Cross-platform shared state across shared libraries/modules
-
microtype
simplify the creation of microtypes
-
fast-rustc-ap-rustc_session
Automatically published version of the package
rustc_sessionin the rust-lang/rust repository from commit 15812785344d913d779d9738fe3cca8de56f71d5 The publishing script for this crate lives at: https://github… -
rustcomp
Adds vector, map, set, and iterator comprehensions to Rust
-
functora-tagged
Lightweight, macro-free newtypes with refinement and derived traits
-
rust_kafka_like
A Kafka-like message broker in Rust
-
eggplant-transpiler
transpiler of eggplant to generate rust code from egglog code
-
except
The only one
Error -
smol_buf
small-string optimized string / buffer type with O(1) clone
-
hgm
Reproduce the Haskell syntax sugar
-
concat-string
macros for concatenating string slices into owned strings
-
shoggoth
Generic and type-level programming for Rust
-
numeric_cast
Safely cast between numbers
-
racer-interner
thread-local string interner for racer-rust
-
rs-schema
Types modeling rust code structures
-
fat_type
A type which permits thin references to arrays and dynamic types
-
portal-solutions-id-arena
id-based arena
-
injectables
procedural macro library that enables field injection between Rust structs through #[injectable] and #[inject_fields] attributes. The library handles visibility rules, generic type resolution…
-
rust2fun
functional programming in Rust
-
newer-type
Support defining newtype wrapper with inheriting trait implementations
-
enum_variant_accessors
derive macros to generate is_*, as_* and as_*_mut accessors for enum variants
-
boost_assert
Boost C++ library boost_assert packaged using Zanbil
-
chassis
Compile-time dependency injection framework
-
intid
Defines the IntegerId trait
-
arc-cell
Helper for a simple Cell-like object containing Arc/Weak
-
should
Postfix assertion library for Rust
-
scsys-traits
scsys is a collection of primitives and utilities for use throughout the ecosystem
-
non-null-const
A *const equivalent of NonNull<T>
-
placid-macro
Separated ownership and in-place construction in Rust
-
easy-config-def
defining and validating application configurations, inspired by Apache Kafka's ConfigDef
-
closure
A macro for capturing variables on a per variable basis
-
checked-float
making invariant-enforcing floating point wrappers
-
sddl
parse and analyse SDDL Strings
-
fastapi
Compile time generated OpenAPI documentation for Rust
-
linq
Language Integrated Query in Rust
-
currying
anything implementing
FnOnce. Arguments can be passed one at a time, yielding a new something implementingFnOnce(and possiblyFnMutandFn) which can be called with one less argument. -
oxur-lang
Oxur language processing: parser, expander, and Core Forms IR
-
map
map!macro andmap_insert!macro, to create a HashMap collection and insert key-value pairs. Inspired by thevec!macro. -
num_string
perform conversion between string and number
-
df_rocket_okapi
OpenAPI (AKA Swagger) document generation for Rocket applications, used in DF Storyteller project
-
assert-impl
Macro for static assert types implement a trait or not
-
bitmask
generator for enum scoped bit flags
-
floxide-longrunning
Long-running node abstractions for the floxide framework
-
state_machine_future
Easily create type-safe
Futures from state machines — without the boilerplate -
skip-if
Attribute macro to skip running a function that produces files
-
shellder
A lightweight, type-safe dependency injection and application framework for Rust inspired by Spring
-
tupleops
work with tuples
-
oncelock
A fast and simple implementation of OnceLock
-
quiet_panics
Make your panics easy to read
-
concordevm
The Concorde Virtual Machine
-
brk-aide
A code-first API documentation library
-
destruct-drop
Macro for dropping the fields of a struct or enum without dropping the container
-
state-machines-core
Core types and traits for the state-machines library
-
openrunner
running OpenScript
-
flow-di
A dependency injection framework for Rust inspired by C# AutoFac and Microsoft.Extensions.DependencyInjection
-
detach
helper type for being able to detach/reatach a member item
-
microstring
Small, niche-able, stack allocated strings
-
copy_impl
Macro for effortlessly duplicating impl block code across various types in Rust
-
result-transformer-dependencies
Traits, macros and utilities for transforming Result values
-
torrust-tracker-located-error
provide error decorator with the location and the source of the original error
-
packetrs
Macro-based struct serialization/deserialization
-
is_default
A trait for checking whether a value is default, with derive support
-
scopeguard-lite
A lightweight way to defer execution of a block to the end of the scope, and to run code during an unwind
-
generics
macros for parsing generics (with optional where clause) in
macro_rules! -
syscall_encode_traits
Traits and macros to help define a syscall interface for a kernel
-
tiptoe
An easy-to-support intrusively reference-counting smart pointer
-
result_option
An enum combining Result and Option into a single type
-
cex
Checked exception simulation
-
rw-exact-ext
Extension of std::io to read and write data types with exact amounts of bytes
-
crfsuite-sys
Rust binding to crfsuite
-
timed-locks
Smart pointers to
tokio::synclocks that either panic or error after a timeout -
fsl
FakeHub State Language. DSL for managing state in fakehub
-
match_any
declarative macro, that matches an expression to any of the patterns and executes the same expression arm for any match
-
rust-2021
Macro to use Rust 2021 from all editions
-
exun
Handle unexpected errors
-
sized-dst
Owned container for dynamically-sized types backed by inline memory
-
lens-rs
lens implemented in rust
-
ordered_iter
Ordered iterators
-
smartcow
a cow for smartstrings
-
formatter-builder
The safe and stable builder for fmt::Formatter
-
maelstrom-test
Test macros for Maelstrom
-
near-safe-cell
A more ergonomic 'UnsafeCell' wrapper/replacement
-
borrow-framework
More flexible borrowing
-
hooks
Compile-time, async hooks
-
enum_like
trait to treat any type as an enum. If a type has a reasonably small number of variants, for example a
struct A(bool, bool)which has 4 variants, this trait provides a 1-to-1 mapping from type value to a… -
praborrow-diplomacy
FFI bindings for cross-language integration with the Sovereign memory model
-
without-ats
A one-function crate for removing '@...@' from a string
-
quick-error2
A macro which makes error types pleasant to write
-
strongly
A proc macro to create strongly-typed primitives
-
not-found-error
Convert Option to Result using convenient functions
-
fstrings-rust
Python3 fstring interpolation in Rust
-
constant
evaluation tools for Rust
-
batch_oper
some batch operation macro for some operations
-
dizzy-macros
Proc macros for the dizzy crate
-
facet-default
Derive Default for facet types with custom field defaults
-
iron_core
Core primitives and execution engine for iron agent framework
-
run-on-drop
Run code when an object is dropped
-
async_fn
Collection of helper annotations and macros for concise and yet explicit
async fnsignatures -
defvar
A macro that makes defining environment variables easy
-
tri_ton
A Macro for Handling Exceptions
-
micro_errors
deal with errors without taking the derive macro approach
-
try-drop
Batteries included error handling mechanisms for drops which can fail
-
trybox
stable,
no_std-compatible, fallible heap allocation -
into-sorted
Collection of utility methods and functions that take an owned array and return a sorted owned array
-
mini-macro-magic
Export tokens to other modules and crates. Now with 100% less proc macros!
-
using-param
Add parameters, generics and return types to all functions in the impl block
-
tuplify
Generic hlist/tuple library
-
kons
variadic tuples
-
type-exts
extension methods for std
-
stack-tokens
stack token implementation for convenient TLS borrowing
-
rukt
dialect for token-based compile-time scripting
-
soupa
macro allowing expressions to be eagerly evaluated before a scope
-
aether_primitives
Helpers for common SDR and signal generation operations
-
familiar
reserve
-
option-chain
A macro for using
?operator in functions that don’t returnOption -
safecast
Traits to define safe casting between types
-
indicator
Abstractions for stream aggregation, we call them
Indicators -
macroland
macro shorthands of various types in Rust
-
lifted
Higher-kinded types in Rust
-
scanmut
Insert/remove multiple items from Vecs in O(n) time
-
arcstr
A better reference-counted string type, with zero-cost (allocation-free) support for string literals, and reference counted substrings
-
checked-rs
encoding validation semantics into the type system
-
bagel
Compile-time evaluation and other tools
-
validex
Input validating library
-
usize_cast
Compile time checked cast from and to
usize/isize -
dlib
Helper macros for handling manually loading optional system libraries
-
unwind_safe
Readable unwind-safe code thanks to a try-finally-looking builder pattern
-
openapi_type
OpenAPI type information for Rust structs and enums
-
cgp-component
Core CGP traits and types used for implementing the CGP component system
-
generic-vec
a vector implementation that can be used in
no_stdenvioronments -
valid
Validate custom types by composing primitive validation functions. Use one common API for validating all kind of business rules including aspects of the application state. One common error type for all…
-
possible
providing a three state enum for differentiating between an explicit null value and the absense of a value
-
sidecast
Dynamic cast between trait objects
-
option-like
Create your own Option-like enum
-
vtid
generating volatile type IDs
-
external_mixin_umbrella
Backing library for
rust_mixinandexternal_mixinto keep them DRY -
list_comprehension
A macro for Haskell-like list comprehensions in Rust
-
ref_wrapper
Wrapper of dynamically borrowed data
-
loop_chain
Macro for writing nested Loop expressions
-
valkyrie-docgen
-
effing-mad
The hottest algebraic effects library in Rust
-
declarative_type_state
A collection of declarative macros to reduce boilerplate code when implementing type-state patterns
-
rvvm
idiomatic RVVM Rust bindings
-
name-it
Give a name to async fn return types
-
functionality
Rust |> Functional programming = 💖
-
closure_attr
An attribute macro to simplify closure captures
-
testify_core
The core library for the testify framework, providing the core functionality and utilities
-
recursive_reference
way to walk on recursive structures easily and safely
-
map-self
Map a value itself instead of its contained value in usual closure style
-
accompany
with-like macro for Rust -
dyn_struct
Construct dynamically sized types safely
-
alias_macros
A alias macro for Rust - create alias for everything...!
-
newtype_derive
macros for deriving common traits for newtype structures
-
notzero
macro for constructing
std::num::NonZero*from constants -
fmap
Functors in Rust
-
tdx-rs
parsing TDX files
-
cowstr
Copy-on-Write shared strings
-
escher
Self-referencial structs using the async/await transformation
-
syrette
The convenient dependency injection framework
-
with_builtin_macros
Helper for macro_rules authors to chain their macros with builtin ones (such as
env!,include!, orconcat_idents!) -
stack_box
store unsize struct on stack with static check
-
traverse
Proof-of-concept trait for internal iterators called traversals
-
better-conversions
Safe and explicit numeric conversions with range and precision checking
-
copy_from_str
An extension trait to copy a string into another string
-
stream-find
Add a
findandfind_mapmethods to any stream -
hacspec-lib
The hacspec library
-
kvakvs/erlangrt
Erlang Replacement Therapy. Another attempt to make Erlang runtime (BEAM emulator) in Rust. Good news: I know what to do. Bad news: I have no clue how to Rust
-
kaguya_rs
Functional Programming tools and ADTs
-
ffizz-header
FFI helpers to generate a C header for your library
-
objio
traits for reading and writing objects
-
makeit
Compile-time checked Builder pattern
derivemacro with zero-memory overhead -
catalyser
A comprehensive collection of extensions to simplify and enhane rust development
-
extracterr
helper type and traits for passing context through dyn Error trait objects
-
typed_macros
Adds typing to your macro's arguments, making it a lot less of a pain to deal with them
-
singleton-trait
Singleton trait for types with unique values and Erased type for zero-sized ownership proofs
-
dec-number
Decimal Floating Point Arithmetic for Rust
-
b-x
The stupidest boxed error ever
-
mutation-monitor
Observe mutations of a value and generate a callback when the value has mutated
-
sod-crossbeam
Service Oriented Design - Crossbeam
-
actix-web-error
Derive ResponseError for your errors
-
abcgen
A procedural macro to generate boilerplate code for objects implementing the 'Actor' pattern
-
objective-rust
Seamlessly bind Rust and Objective-C code
-
assert_eq
location-aware equality assertions
-
unchecked-std
some methods from the Rust standard library without some checks
-
maybe-uninit-ext
Extended maybe-uninit types
-
intercom
writing COM visible Rust components
-
new_type
Experimental implementation of newtypes by type level logic
-
count-tts-inner
macro for counting any position tokens
-
self-rust-tokenize
Turns instances of Rust structures into a token stream that creates the instance
-
inline_default
Macro for inline Default implementation
-
io-providers
Enables dependency injection for many I/O operations
-
variadic_generics
A first attempt in using traits & tuples to work around Rusts lack of variadic generics
-
deref_owned
Generalization of std::borrow::Cow
-
yukon
trait for the ability to cheaply duplicate an object
-
slot-cell
SlotCell - an interior mutability container. It acts as a "Runtime-Checked Move Cell", providing owned access to data rather than references.
-
display-more
helper to display various types
-
thinnable
Thin references to unsized types
-
rusty-typesh
A flexible type pattern matching system for Rust
-
itermap
Iterator tools for maps (
HashMap,BTreeMap, etc.) -
boost-rs
boosting your develop productivity on Rust
-
stable_identifier
Convenience library for working with identifier types
-
zrx-id
Identifier abstractions and utilities
-
refinement-types
Refinement types
-
abi_stable_shared
detail of abi_stable
-
state-validation
Validation for states
-
fallback-if
Fall back to an alternative given some predicate
-
rx_core_subscriber_higher_order_all
higher_order_all subscriber for rx_core
-
haz
A thin abstraction over polymorphic environments
-
simple_generators_adapter
helper crate for simple_generators, containing the adapter
-
stackbox
&owning references in stable Rust - no_std-friendly Box -
test_eq
assert_eq!-like macros that return a Result instead
-
interior_mutability_pointer
A wrapper around
Rc<RefCell<T>>allowing immediate access to inner methods -
higher_order_functions
A small collection of traits for implementing higher order functions
-
arbintrary
Proof of concept for arbitrary integer sizes using generic const
-
ddd-rs
Domain-Driven Design (DDD) building blocks, for Rust applications
-
ezexec
API to execute binaries or shell commands via
std::process::Command -
infinite-stream
Streams (asynchronous iterators) that always keep yielding items (or panic, or become pending forever)
-
env_parser
Env parser. Parse your env file and create a Rust file with mapped properties
-
treenode
Node struct
-
veccell
variant of Vec with interior mutability
-
derive-into
derive macro for easily creating conversions between structs and enums
-
num-conv
num_convis a crate to convert between integer types without usingascasts. This provides better certainty when refactoring, makes the exact behavior of code more explicit, and allows using turbofish syntax. -
hatch_result
A result-like struct that returns on Ok, instead of on Err when ? operator is used
-
gesha-macros
Macors for Gesha proejct
-
always_equal
A wrapper for types that can't implement Eq
-
digitize
Traits for accessing digits of primitive integers & floats
-
bytelike
Common types and functions for byte size handling
-
access-json
Use serde to query large nested structures in Rust. For low-effort, read-only FFI.
-
generic-to
method-generic conversion traits
-
og-enum-to-string
EnumToStringderive macro which implements the methodsas_str()andas_dbg()to enums with no associated values -
once_cell_serde
Single assignment cells and lazy values
-
dynamic-cast
The fifth pillar of OOP: dynamic casting
-
fb_cloned
Cloned macro
-
visita
Elegant implementation of the Visitor Pattern
-
plain_enum
Mimicing Java's enum::values() and EnumMap
-
kg-symbol
Atomic strings in Rust
-
je-di
Hierarchical dependency injection
-
httpwg-macros
Macros to allow generating httpwg unit tests
-
cib
proc-macros for crate cib
-
autotrait
Reduces boilerplate by auto-generating trait definitions from impl blocks for dynamic dispatch
-
variant_access_traits
A set of traits and for defining a common api for Rust enums based on the std::variant api in the C++ standard library
-
runar_macros_common
Common macros for the Runar system
-
replicante_util_failure
Helper functions to manage failures
-
assert-cmp
Convenient assertion macros that print the failed expressions and their evaluated values
-
assert-type-eq
Macro to assert types across potentially different crate versions are compatible
-
enum_derive
macros for deriving additional functionality for enums
-
future-local-storage
An init-once-per-future cell for thread-local values
-
enum_properties
A macro for declaring static properties on enum variants
-
solution_cli
CLI for convert crate use
solution::solution!()macro to a version for student (with solution stripped and hint intodo!()) -
typify-impl
typify backend implementation
-
paracord
A fast, simple, multi-threaded string interning library
-
futility
Functional Utility types, macros, and functions for common tasks or needs in Rust
-
semester
High efficiency classnames macro
-
r-ex
Zero-bloat Rust core library extensions
-
clap-doc
Create markdown descriptions for
clap::Commands -
cargo_toml
Cargo.tomlstruct definitions for parsing with Serde -
type_hash
Generate a hash for a Rust type. The primary use-case for this crate is for detecting differences in message types between versions of a crate. The
TypeHashtrait is implemented… -
pkbuffer
Buffer objects made for arbitrary casting and addressing!
-
irox-structs
Traits for Struct Types - linearly serialized big/little endian bytes
-
splitmut
Safely retrieves multiple mutable values from the same collection
-
edition
Macros to switch between Rust editions
-
random_variant
To be used with all variant, contains the derive macro
-
impl_ops
Macros for easy operator overloading
-
similar-structs-macros
Quality-of-life macros for more concise struct/enum definitions
-
opdater
Small trait based approch to struct updates
-
portable_intertrait
Allow for inter-trait casting
-
degeneric-macros
Hides struct generics into trait associated types
-
cismute
Safely transmute type to itself in generic contexts
-
struple
Convert structures from and to tuples
-
wrapping_macros
A macro for wrapping arithmetic
-
prae
that aims to provide a better way to define types that require validation
-
ref_thread_local
A macro for declaring thread-local
statics like using both oflazy_static!andRefCell -
icydb-schema
IcyDB — A type-safe, embedded ORM and schema system for the Internet Computer
-
stratagem
A trait library that enables state management and command execution with built-in undo support, inspired by the Command design pattern
-
isomorphic
Getting a reference to an isomorphic type
-
tuple-fn
call functions and closures with tuple of arguments
-
kti_cqrs_rs
CQRS pattern in Rust
-
cute
A macro for Python-esque comprehensions
-
rustc-ap-rustc_error_codes
Automatically published version of the package
rustc_error_codesin the rust-lang/rust repository from commit 30ca215b4e38b32aa7abdd635c5e2d56f5724494 The publishing script for this crate lives at: https://github… -
duplex
trait: interactive streams
-
non_structural_derive
nonstructural derives for auto traits
-
microrust_inject
MicroRust Dependency Injection
-
cxx-symbols
detail of the
cxxcrate -
frust
Functional Programming in Rust
-
set_slice
A macro for assigning values to slices
-
type-fn
Allows for simpler coding of type-level logic, e.g. for type-number systems.
-
select_indices
Iterators for taking multiple shared/exclusive references from a slice
-
gc_abi
Gridcore Plugin Safe ABI Bindings
-
amass
Automatically generate
Fromimpls for nested enums, even across crates -
cgp-error-extra
Context-generic programming error components
-
typed_builder_rules
Opinionated and very limited macro_rules reimplementation of the typed_builder macro
-
tor-async-utils
Async/futures helpers for use with Tor
-
static_assert_macro
so-called
static_assert -
try_map
try_mapandflipmethods forOption. These allow more ergonomic error handling when mapping functions that returnResultoverOption. -
nullnet-liberror
Error handling library for NullNet
-
conniecs
ECS system based off of the
ecscrate, but with some minor API adjustments and derive macros for implementing most of the boilerplate. Make sure to include theconniecs-derivecrate as well -
fluent-string
Fluent versions of String mutation methods
-
enum-primitive-derive
enum_primitive implementation using procedural macros to have a custom derive
-
rich-result
Rich result type differentiating between recoverable & fatal errors
-
lubeck
Functional programming framework written in cutting edge rust
-
unreachable
code optimization hint in stable rust
-
into_inner
IntoInner trait for Rust newtypes
-
pin-macros
primarly used to simplify the proccess of working with self-referencial structures
-
tuple_split
An extension for the tupleops crate which adds a trait for splitting tuples
-
type-census
Track the number of extant instances of your types
-
cereal
data serialisation library
-
nutype_test_util
Ergonomically create newtypes in tests
-
shovel
A declarative, fast CLI parsing library with derive macros, no_std support, and zero-cost abstractions
-
omniswap
swap values between possibly-overlapping references
-
ambit
Attribute macro for ranged number newtypes
-
rust-2015
Macro to use Rust 2015 from all editions
-
result-ext
Extends
Resultwith additional operations -
signrel
Trait expressing relationship between integers of different signedness
-
dyn_safe
Take control of the Semver hazard of the
dynsafety of your traits! -
tagged_cell
Fast, initializable, and thread safe static variables
-
not_enough_asserts
A collection of asserts that I found useful
-
sod-mpsc
Service Oriented Design - Multi Producer Single Consumer
-
facet-spez
Auto-deref specialization helpers for the Facet reflection system
-
confi
confidence intervals and significance levels for statistical computation
-
never-say-never
The never type (the true one!) in stable Rust
-
dynerr
Macros for dynamic error handling
-
blue_typemap
A TypeMap Dependency Injection method for dynamic function parameters
-
bool-enum
A macro for generating boolean-like enums that support bitwise and boolean operations
-
aggregate
attributes of structs for runtime
-
std2
"minimal std is a feature" - a coping rust shill
-
unescape_zero_copy
Unescape strings without allocating memory
-
cdumay_base64
base64
-
rusty_v8_helper
Helper functions for rusty_v8_protryon
-
hb_error
Useful macros and traits for creating and handling errors
-
itemize
Flexible input handling for APIs accepting single values, tuples, or collections
-
semire_read
A safe, easy-to-use module for reading integers, floats, and strings from stdin in Rust
-
scope-guard
RAII scope guard
-
approx_eq
A macro for comparing equality of two values up to an arbitrary error in the *relative* difference
-
fastcode
Fast to writing your code with extension function and popular crates
-
bitbag
A useful struct for dealing with bit flags
-
bitstructs
Defining type-safe bitfield structures that can be used in both
stdandno_stdenvironments -
typebitset
Type-level bitset implementation
-
trading-sdk
Abstract Crypto Trading SDK
-
dynstack
A stack for trait objects that minimizes allocations
-
just-string
Container for various kinds of strings
-
nohash-hasher
std::hash::Hasherwhich does not hash at all -
option_trait
Helper traits for more generalized options
-
lang-extension
Rust Lang Extension
-
structural
Field accessor traits,and emulation of structural types
-
multiconst
destructures an expression into multiple constants
-
non-zero-size
Non-zero sizes
-
irox-types
Enums and structs to describe Rust's basic type system
-
type-operators
A macro system for creating type operators in Rust and writing type-level logic
-
oxi-types
Rust bindings to types used by Neovim's C API
-
rvs-repl
REPL for Rvs - A library for defining and evaluating random variables using a simple DSL
-
rsb_derive
An opinionated macro implementation for Rust struct builder pattern with compile-time validation
-
tryiter
functions for Iterators of Results
-
dzn-rs
dealing with DZN files used in the MiniZinc language
-
com-scrape-types
Support code for bindings generated with com-scrape
-
assert-size-derive
Compile time type size assertion attribute macro
-
non-non-full
Vec and String wrappers that assert the containers are always non-empty (or, ahem, non-non-full)
-
take-static
Static items that provide mutable access only once
-
gtin-validate
Validate GTIN barcodes including UPC-A and EAN-13. This module has built-in support for GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), and GTIN-14 codes
-
cmp_any
Comparison for &dyn types
-
commandspec
Rust macro to build std::process::Command objects with shell syntax. Uses macro_rules! and works on stable.
-
swiss-army-knife
Common utility code to support linux-support and other projects
-
custom-string
aids in generating string types with custom validation
-
chomp
A fast monadic-style parser combinator designed to work on stable Rust
-
necessist-core
-
any-dyn
Trait objects whose trait is tracked at runtime rather than compile time
-
sigma-enum-macros
Procedural macros for
sigma_enum -
gostd_strings
part of gostd, gostd_strings 是go标准库strings的rust实现
-
tectonic_errors
A boxed error type for Tectonic, with supporting utilities
-
supercow
A generic way to accept general reference-like values without proliferating generics
-
fast-floats
Fast-math wrappers for floats; experimental and unstable; for experiments
-
syan
Syntactic and structural parser fundamentals, reimplementing syn crate
-
transactional_iterator
Iterator that allows to commit or abort progress
-
advancer
Helper for advancing over mutable slices
-
en
The easiest numeric traits!
-
flexcell
A flexible cell that allows safe circumvention of double borrow issues
-
struct_baker
enable ergonomic creation of compile time parsers
-
elixirgen
Elixir generator
-
lit2
Collection helper libraries and “literal” macros for HashMap, HashSet, BTreeMap, and BTreeSet
-
ddi
Dynamic dependency injection library for rust
-
assert-impl-trait
macro to assert that a type implements a trait
-
const-map-array
Map arrays in a const context
-
cow2
Like Cow<B>, but B is covariant
-
variadiz
Variadic function support for rust
-
archery
Abstract over the atomicity of reference-counting pointers
-
slab_typesafe
A wrapper for Slab that provides type-safe tokens instead of usize
-
hop-actions
Action primitives and centralizer utilities for hop-core streams
-
beaver
setting up Rust objects inspired by factory_bot
-
packer
Pack static files into your binary at compile time
-
into-static
Upgrading to static lifetimes
-
isolator
A lightweight library for isolating Rust functions
-
transmute_guard
Transmute between types that have been marked as safe by the marker type
-
chandeliers-err
Internal error message generators for the Chandeliers project
-
tt-call
Token tree calling convention
-
proptest-recurse
Helper for defining mutually recursive strategies with proptest
-
structmap
Procedural macro library for converting between Rust structs and associative containers
-
builderx-gpui
gpui adapter implementations for the builderx DSL
-
smart
dynamically-dispatched smart pointers
-
see-through
traits to provide access to internal fields of generic structs
-
swamp-std
Standard i/o functions for Swamp
-
enum_to_enum
Derives possibly effectful conversions between enums
-
array-const-fn-init
Initializes an array with constant values calculated by a
const fn -
rust_c
Write C code inline in your rust code (hacky fork of rust-cpp / cpp crate)
-
rustato-macros
Macros for the Rustato library
-
better_unsafe
Unsafe utilities
-
init_with
Helper trait to initilize an array with a function
-
eldenring-dlrf
Macro for generating singleton specifier for usage with the DLRF singleton finder
-
rattish
Cast between trait objects
-
tor-basic-utils
General helpers used by Tor
-
mlua-gen
Generates code to easily use Rust's structs or enums in Lua with mlua
-
zrx-scheduler
Scheduler for workflow execution
-
pass_by_catastrophe
Please do not use this
-
unsafe-any
Traits and implementations for unchecked downcasting
-
lambda-types
Puts the lambda calculus in Rust...'s type system
-
temp-inst
safe lifetime-erased representations for objects with lifetime parameters. Can be used to pass an object across an API where lifetime parameters would prevent it.
-
slist
Algebraic lists with statically determined size that live on stack
-
atomflag
Atomics for your bitflags!
-
winnow-regex
A set of winnow parsers backed by the regex crate
-
nougat
(lifetime) GATs on stable Rust
-
tany
Type-erased container with inline storage for small values
-
ref-ops
An escape hatch for implementing
opstraits for references to newtypes -
nonnull-mut
NonNull<T>, but T is invariant like *mut T
-
type-const
Type-level associated consts
-
torrust-index-located-error
provide error decorator with the location and the source of the original error
-
type-layout
Derivable trait to view the layout of a struct, useful for debugging
-
show-option
displaying Options
-
predicates-core
An API for boolean-valued predicate functions
-
rbx-rsml-camren-m
(fork of rbx-rsml that emits only Color3s, not Color3uint8s) A lexer and parser for the RSML language
-
try_as
Macros and traits to ease using enums whose sole purpose is to enumerate a set of types
-
prosia-extensions
Useful extensions for types, arrays and other helper functions for Prosia projects
-
xdi
Rust di containers system
-
token-ref-cell
Interior mutability cell using an external token to synchronize accesses
-
display_with
Return opaque impl Display and/or impl Debug types via display_with and debug_with
-
parameterx
flexible and type-safe parameter management system for Rust applications. This library provides multiple ways to store and retrieve typed values using a key-value structure, with support…
-
entrance
A command line argument parser library which provides type assisted tools
-
optargs
Easily create macros for functions with optional arguments
-
fmt-cmp
Traits and utilities for lexicographically comparing values in their
Displayrepresentations -
ccgen
generate manually maintained C (and C++) headers
-
swimos_form
SwimOS Serialization and Deserialization
-
atomic_refcell
Threadsafe RefCell
-
py-comp
A macro implementing a Python-like generator expression
-
convert-byte-size-string
Convert a byte size string to a u128 value
-
trait-union
Stack-allocated trait objects
-
rx_core_subscriber_higher_order_map
higher_order_map subscriber for rx_core
-
fromage
A cheesy Rust hack for converting between non-local types
-
my_tuple
A pretty implementation of tuple
-
err-rs
Error level management
-
const_typed_builder
Compile-time type-checked builder derive using const generics
-
turso-mappers
Row mappers for turso
-
stringer
An easy way to turn an Unsafe *const c_char into a Rust String type and return a pointer
-
tokio-timeout
A proc-macro which adds a timeout to an asynchronous function running under the tokio runtime
-
unwrap_none
Implements the
unwrap_noneandexpect_nonemethods removed by https://github.com/rust-lang/rust/pull/83349 -
funlib
Rust functional library
-
dyn_partial_eq
PartialEq macros for trait objects
-
ketos
Lisp dialect scripting and extension language
-
conveyor-etl-dsl
YAML DSL parser for Conveyor ETL pipeline definitions
-
with_capacity_safe
A safer alternative to Vec::with_capacity with into_raw_parts which can be used from stable
-
cursor
A more free Rust-Iterator
-
string_macro
macro to create string
-
ctor_macro
A derive proc-macro that automatically derives a constructor for your struct!
-
teloc
compile-time DI framework for Rust
-
restd
A re-implementation of various std features
-
negative-impl
Negative trait implementations on stable Rust
-
static-cond
Macro for performing comparisons during macro expansion
-
no_std_strings
no_std version of crate fixedstr: strings of constant maximum size that can be copied and stack allocated
-
nightly-quirks
A basic set of utilities that mimic nightly behaviour in stable Rust, with the possibility of using nightly implementation with the nightly feature
-
derive_constructors
Deriving From, TryFrom and create new_with_*args* functions
-
build-deftly
Derive custom builders, using the derive-deftly macro system
-
docify_clone
Docify allows you to live-embed at compile time pieces of code from throughout your project as rust doc examples
-
clonesure
A helper macro to create closures which will clone its environment
-
for_each_count
try_for_each_count extension methods for iterators
-
resext-macro
lightweight error handling crate for Rust
-
newtype-derive-2018
macros for deriving common traits for newtype structures
-
floxide-event
Event-driven node abstractions for the floxide framework
-
tuplemagic
manipulating tuples through various operations like mapping, filtering, nesting, and reducing
-
junkdrawer
all kinds of utilities
-
validus
A string validation library
-
coi
Dependency Injection library
-
pattern_code
Given a path patterm matched source code
-
scanfmt
easy to use macro for parsing a string
-
arcerror
thin wrappers around Arc<T> and Rc<T> where T: Error. Impls Error for both of these types. No unsafe, no dependencies.
-
basic-oop
OOP for Rust
-
powerfmt
powerfmtis a library that provides utilities for formatting values. This crate makes it significantly easier to support filling to a minimum width with alignment, avoid heap… -
fsize
fsizeis aliased to the floating-point type of pointer size -
should_match
Pass a test if the output matches a pattern
-
ghosts
Type-check non-existing
Phantomcode for Fun And Profit™ -
math-parser-rs
handwritten dsl for interpreting math
-
phantom_newtype
Lightweight newtypes without macros
-
zeta-shared
Shared utilities and types for Zeta Reticula components
-
romap
A trait for read-only-maps
-
atom_str
A string interning library
-
memory-size-type
A data type for dealing with memory sizes
-
copstr
COpy STRing module
-
osu-file-parser
parse an osu! beatmap file
-
fibre_ioc
A flexible, thread-safe and dynamic Inversion of Control (IoC) container for Rust
-
unchecked-index
Unchecked indexing wrapper using regular index syntax
-
the-newtype
The Newtype trait
-
zrx-store
Store abstractions and utilities
-
zrx-stream
Stream interface
-
no-std-thiserror
thiserror but no_std compatible
-
respan
Macros to erase scope information from tokens
-
macro-bits
performing macro-based bit manipulation
-
subslice-to-array
Extract fixed-range subslices as arrays, with compile-time checks
-
every_variant
EveryVariant trait that provides the every_variant method on types. Allows you to easily generate every combination of variants in structures that contains Enums, or in nested enum trees…
-
bpmn-sdk
Type-safe Rust DSL for declarative BPMN process modeling
-
keepops
Extension traits for keeping the input of mapping functions
-
derive-ex
Improved version of the macro to implement the traits defined in the standard library
-
dyn-error
Error-related utilites for Rust
-
fn_zip
zip trait for functions, allowing two functions to be combined before being called
-
serde_newtype
Macro for generating newtypes with validity checks for use with serde
-
cgp-type
Context-generic programming core component traits
-
hexga_array
that impl trait / new functions for array
-
known-types
Well-known types
-
once-cell-regex
just gives you the
regexmacro from theonce_celldocs! -
multer-derive
derive for constructign type from multer Multipart
-
variadic_closure
Support for dynamically created and called closures with variable number of arguments
-
wrapped-list
Macro for wrapping elements of a list with an object, function, or another macro at compile time
-
peresil
simplistic string parsing library
-
appro-eq
Approximately equal traits and assertion
-
fast-map
Map-like structs
-
ident-util
macro to determine the string name of a binding, type, const, or function
-
iex
Idiomatic exceptions
-
dyn_struct2
Construct dynamically sized types safely. Supports arbitrary unsized types, not just slices
-
choices
HTTP configuration service by defining a struct
-
io-adapters
Adapters to convert between different writable APIs
-
rust_support
A collection of utilities for Rust
-
cflp
A context-free-language parser generated by procedural macros
-
telocs
compile-time DI framework for Rust
-
emplacable
Return unsized values from functions
-
any_ref
To capture and move things that are NOT 'static with memory safety
-
not-so-fast
data validation with derive macro
-
const_guards
An attribute macro for compile time constraints on const generics
-
type-toppings
Opinionated extensions to standard types
-
rvs-c-api
C-API for Rvs - A library for defining and evaluating random variables using a simple DSL
-
unzip3
Same as Iterator::unzip, but for 3 items. Based on Rust 1.6 implementation.
-
sycamore-state-core
sycamore-state core types and trait definitions
-
strunemix
allows to build a struct with a form of its fields, by deriving enums of them
-
http-error
Error trait to help convert errors to http error responses
-
ctti
Compile-time type information
-
as_num
Checked conversions between Rust's numeric types
-
facet-opaque
Type-erased pointer helpers for Facet types
-
polymorphic-constant
A macro to define a numerical constant in multiple types at once
-
traitobject
Unsafe helpers for working with raw trait objects
-
async-iter-ext
Async iterator methods and async methods for option and result
-
einmalig
A tiny crate that allows unsizing
FnOncefunctions without boxing -
maplit2
Collection helper libraries and “literal” macros for HashMap, HashSet, BTreeMap, and BTreeSet
-
tartan-c-enum
Define FFI-safe enums that support unknown values
-
spectral
Fluent test assertions
-
temporary_enum_delegate_0_3_0
trait delegation functionality for enums and structs
-
astr
A const lenght stack str
-
debug_unwraps
Extension traits for debug only checked unwrapping
-
from_variant
Automatically derive From impls for enums
-
eso
Type machinery to build Cow-like containers
-
langen
create programming languages
-
rust-2024
Macro to use Rust 2024 from all editions
-
litenum
minimal convertion utilities between literal and enum
-
iter-python
Python generator expressions and 'list' comprehensions
-
simple-life
async lifecycle trait and convenient macros
-
yadir
Dependency Injection Registry for Rust
-
hictor
declarative macro for __attribute__((constructor))/__attribute__((destructor))
-
flexi_func_declarative
exposes the fb! macro to create a function with a flexible signature
-
simplicio
Gets rid of the boilerplate in rust
-
sod-bus
Service Oriented Design - Single Producer Multi Consumer
-
redox-path
Path parsing primitives for Redox
-
segv-test
Macro to test that a segmentation fault occurs
-
arc-interner
An interner that deallocates unused values
-
engineer
master builder!
-
fluent_state_machine
A domain-specific language (DSL) for creating state machines in Rust
-
chained
lazily chaining functions
-
arraybox
A box with fixed capacity, backed by a byte array (it can be stored on the stack too). Implements fixed capacity
ArrayBox. -
indexing
Sound unchecked indexing using “generativity”; a type system approach to indices, pointers and ranges that are trusted to be in bounds
-
color-core
Color shared definition
-
treeerror
macros for generating trees of enums, as well as
Fromimplementations converting between them. Primarily intended for error handling. -
lifelink
Erase covariant lifetime parameters from anything, with generic associated types
-
internal_iterator_rec
Recursive extension for the
internal_iteratorcrate -
squeak
providing types allowing execution of callbacks in response to values being broadcast or mutated
-
smacro
A collection of convenient Rust macros to reduce boilerplate
-
squall_dot_io_resp
A RESP parser implementation, written with edge performance in mind
-
shared_error
SharedError wrapper for cloneable Error
-
vec-utils
vector utilities
-
error-utils
Some rust macros to simplify common error handling patterns
-
fluent_builder
builder API
-
gitoxide-core
implementing all capabilities of the gitoxide CLI
-
schema2000
derive a JSON schema from given JSON objects
-
repr_cast
A procedural macro that enhances fieldless enums with proper conversions between enum variants and their integer representation types
-
anon-vec
An Anonymous Vector that emulates dynamic typing
-
whiteout
macros that erase the type of any value into an impl Trait for a given trait
-
tacit
macro to make newtypes easier to create
-
enum-from-discriminant-derive
Macro to implement TryFrom<Integers> for enum discriminants
-
cpp_core
interoperability with C++
-
pathext
A small path trait extension with some convenience methods
-
fixedstr-ext
A fork of fixedstr, which add more const functions to it
-
scoped-writer
Scoped writer utility
-
multi_try
Safely combine results
-
mathelogos
as a functional programming language
-
result-inspect
Adds the missing Result::inspect() function
-
rust2fun_laws
Laws for rust2fun
-
x-bow
Precise State Management Library
-
laxcow
Clone-on-write smart pointer with relaxed trait constraints
-
to_boxed
defines ToBoxed Trait and its derive
-
ryu_floating_decimal
Fast floating point to floating decimal conversion. See the crate 'ryu' for more details
-
structural-convert
Derive conversion traits (From, Into, TryFrom, TryInto) when fields are structurally similar in enums or structs
-
ffizz-string
FFI string implementation
-
ortho_vec_derive
Derive orthogonal vector structure for better CPU cache usage
-
disuse
The way to notify the implementation which return value is disuse
-
tch-tensor-like
Derive convenient methods for struct or enum of tch tensors
-
derive-regex
Easily parse a regex into a struct or enum variant
-
unsafe-any-ors
Traits and implementations for unchecked downcasting
-
merg
Merge multiple values into one
-
serde-struct-tuple
Procedural macro for deserializing a struct from a tuple of its fields
-
seestr
pointer-wide nul-terminated strings with ownership semantics
-
compost
Adds a macro to decompose tuples into tuples containing a subset of their values
-
polymorph
A few utilities to better enable polymorphic behavior in Rust
-
improved_slice_patterns
A tiny crate that provides macros to help matching on Vecs and iterators using the syntax of slice_patterns
-
bind2
Generate some let statements, similar to bind, but very lightweight
-
trait-gen
Trait implementation generator macro
-
iter-builder
Iterator builder with chain calls
-
next_tuple
A trait to build and extend tuples
-
recursion-schemes
cache-aware stack safe recursion (this is the really haskell brained one)
-
mod
project that provides two simple and useful utility functions for converting between Option and Result types
-
easy-macros-helpers
Easy Macros support library
-
bitmagic
Rust bindings for the bitmagic library
-
scalar_types
A module that wraps scalar types in an endian safe type
-
htmxpress
Procedural macros for generating htmx strings
-
structify
A procedural macro to transform functions into structs with state and execution dependencies
-
option_either_or
Option into Either conversion
-
standard_test
A set of tests checking the properties of your impls of std traits
-
const-assert
Assert struct for const generics
-
io-arrays
Random-access I/O