1 个不稳定版本
使用旧的Rust 2015
| 0.1.0 | 2017年9月3日 |
|---|
#25 在 #malloc
26KB
334 行
malloc-bind
malloc-bind 包提供了对C malloc API的绑定。给定Rust Alloc 特质的实现,它生成C malloc API的实现(malloc、free、realloc等)并定义了可用来生成C共享对象文件的extern "C"函数。
lib.rs:
为Rust分配器提供C malloc API的绑定。
此包提供了一个构建C分配器的机制 - 一个malloc、free和相关函数的实现,这些实现由Rust分配器(Alloc特质的实现)支持。
为了创建绑定,必须提供两个东西:一个Alloc特质的实现,以及一个LayoutFinder特质的实现(定义在此包中)。由于C API不提供free的尺寸或对齐,但Rust Alloc API要求在dealloc时提供尺寸和对齐,因此需要在已分配对象及其尺寸和对齐之间维护映射。 LayoutFinder提供了此功能。
依赖项
~65–335KB