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