3 releases
0.8.3 | Nov 16, 2023 |
---|---|
0.8.2 | Jan 24, 2023 |
0.6.1 |
|
0.5.0 |
|
0.1.0 |
|
#1583 in Data structures
30 downloads per month
18KB
448 lines
fusebox
Mostly safe and sound append-only collection of trait objects.
Why?
This avoids extra indirection of Vec<Box<dyn Trait>>
, which might matter for you.
I personally use it in pcmg audio synthesizer for fusing together multiple filters and oscillators.
Changelog
0.8.3
- Alignment bug in reallocation logic (#5)
0.8.2
- Fix bug in reallocation logic (#4)
0.8.0
push_unsafe
removed from public APIpush
no longer requiresT: Send
, insteadSend
andSync
are implemented forFuseBox<Dyn>
depending on wetherDyn
is
0.7.0
- Improved iteration performance by using two pointer technique
0.6.0
- Performance improvements
- Soundness fixes
0.5.0
- Use
Unsize
instead ofAsDyn
marker trait, making safe push for foreign types possible
0.4.0
- Removed
Sz
parameter fromFuseBox
FuseBox
now supports truly random access
0.3.0
- Added
Size
to restrictSz
to valid unsigned integers
0.2.0
- Added
AsDyn
to make safepush
possible. - Fixed pushed values not being dropped when
FuseBox
is dropped
0.1.0
Initial release
Dependencies
~0.2–13MB
~165K SLoC