Our great sponsors
-
rust-smallvec
"Small vector" optimization for Rust: store up to a small number of items on the stack
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
indexmap
A hash table with consistent order and fast iteration; access items by key or sequence index
You're using an error wrapping crate. I highly recommend that for a library crate you use hand-written error types, this gives users of your library maximum flexiblity in how they want to use your errors. thiserror is a fantastic crate to help with this: thiserror errors are not wrapped in anything, all it does is provides macros to help you build custom error types with a little less boilerplate (the macros emit code which just uses the error machinery from std and nothing else).
You might want to check out how popular ecosystem crates do some of these things. Particularly relevant to you are probably crates providing collections, such as smallvec, hashbrown, or indexmap.
You might want to check out how popular ecosystem crates do some of these things. Particularly relevant to you are probably crates providing collections, such as smallvec, hashbrown, or indexmap.
You might want to check out how popular ecosystem crates do some of these things. Particularly relevant to you are probably crates providing collections, such as smallvec, hashbrown, or indexmap.
Related posts
- 3 years of fulltime Rust game development, and why we're leaving Rust behind
- Apnic: Cgnat is harming internet innovation (2022)
- Fyrox Game Engine – a Rust game engine with a real editor and scripting system
- Voronoi, Manhattan, random
- CrabGrab: new OSS Rust crate for cross-platform screen/window capture