A safe, fallible, embedded-friendly ordered set and map implementation using a scapegoat tree, validated against Rust's BTreeSet/BTreeMap.
Scapegoat is a Rust library that provides ordered set (SgSet) and map (SgMap) data structures via an arena-based scapegoat tree, a memory-efficient, self-balancing binary search tree. It is designed for embedded and resource-constrained environments, offering a safe, #![no_std] alternative to Rust's standard library collections with fallible APIs for robust error handling.
Embedded systems developers and kernelspace programmers working in Rust on resource-constrained platforms without dynamic memory allocation, who need safe, deterministic collections.
Developers choose Scapegoat for its strict memory safety guarantees with zero unsafe code, fixed stack usage via const generics, and fallible APIs that prevent OOM panics, making it a reliable drop-in replacement for BTreeMap/BTreeSet in no_std contexts.
Safe, fallible, embedded-friendly ordered set/map via a scapegoat tree. Validated against BTreeSet/BTreeMap.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.