Allocator interface traits for Rust
- Why not
core::alloc::Allocator
/allocator_api
?- 7+ years unstabilized and counting.
- I want container allocations this decade, thanks!
- We can aim to be compatible and interopable with it, if/when it stabilizes, or via separate nightly crates.
- Why not
core::alloc::GlobalAlloc
?- Win32
FreeSid
has no equivalent arbitrary allocation function to implementGlobalAlloc::alloc
with. bgfx::alloc
has no equivalent arbitrary free function to implementGlobalAlloc::dealloc
with.- Split alloc/free/realloc traits will help avoid bugs and misuse!
- That said, we can aim to be compatible and interopable with it.
- Win32
- Rust-style traits are annoying to adapt to C-style allocators. This provides more C-friendly traits as options.
- NUMA? Although ask again later.
- Physical GPU memory allocation, probably. Might warrant a related crate?
- ID/handle allocation, perhaps. Might warrant a related crate?
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.