7 stable releases
Uses old Rust 2015
1.3.1 | Feb 27, 2023 |
---|---|
1.2.0 | Feb 27, 2023 |
1.1.0 | Jan 29, 2022 |
1.0.1 | Dec 29, 2021 |
1.0.0 | Dec 13, 2020 |
#145 in Memory management
3,099 downloads per month
Used in 15 crates
(2 directly)
26KB
536 lines
Malloced
A malloc
-ed box pointer type, brought to you by
@NikolaiVazquez!
Table of Contents
Donate
If this project is useful to you, please consider sponsoring me or donating directly!
Doing so enables me to create high-quality open source software like this. ❤️
Usage
This library is available on crates.io and
can be used by adding the following to your project's
Cargo.toml
:
[dependencies]
malloced = "1.3.1"
The star of the show is Malloced
, Box
-like pointer that calls free
on
Drop
:
use malloced::Malloced;
MSRV
This library's minimum supported Rust version (MSRV) is 1.64. A new version requirement would result in a minor version update.
FFI Safety
Malloced<T>
is a #[repr(transparent)]
wrapper over NonNull<T>
, so it can
be safely used in C FFI. For example, the following is safe and even compiles
with the improper_ctypes
lint enabled:
#[deny(improper_ctypes)]
extern "C" {
fn my_array_malloc() -> Malloced<[u8; 32]>;
}
Alternatives
License
This project is released under either MIT License or Apache License (Version 2.0) at your choosing.