3 stable releases
2.0.1 | Jan 9, 2024 |
---|---|
2.0.0 | Jan 8, 2024 |
1.0.0 | Jul 11, 2023 |
#2026 in Data structures
20KB
350 lines
miny
A Box<T>
with T
stored inline for values less than a pointer in size. Requires nightly Rust & alloc
use miny::Miny;
let small = Miny::new(1_u8);
let large = Miny::new([1_usize; 32]);
// small is stored inline on the stack
assert!(Miny::on_stack(&small));
// large is stored with an allocation
assert!(!Miny::on_stack(&large));
// consume the miny and get back a value
let original = Miny::into_inner(large);
assert_eq!(original, [1; 32]);
For more information, read the docs.
Changelog
2.0.1
- Documentation upgrade
2.0.0
- Redid the entire library to require qualified syntax, because I realized that that's probably a good idea
1.0.0
- Initial release
License
MIT or Apache 2.0
(also hi please give me suggestions for more features to add, this crate feels kinda small)