13 个版本 (3 个稳定版)
1.2.0 | 2021 年 5 月 8 日 |
---|---|
1.1.0 | 2021 年 3 月 20 日 |
1.0.0 | 2020 年 9 月 7 日 |
0.5.2 | 2020 年 8 月 20 日 |
0.1.1 | 2016 年 11 月 14 日 |
在 内存管理 中排名第 668
每月下载量 6,930
在 20 个 crate 中使用(通过 synchrotron)
23KB
304 行
vec-arena (已弃用)
此 crate 现已弃用,推荐使用 slab。
这是什么?
简单的对象区域。
你想构建一个双向链表?或者一个双向树?也许是一个更复杂的对象图?
管理所有权和生命周期可能会很困难。你的选项包括
- 使用不安全代码来绕过 Rust 的所有权规则。
- 将每个对象包装在
Rc<RefCell<T>>
中。 - 使用
Vec<T>
存储对象,然后使用索引访问它们。
如果最后一个选项对你最有吸引力,那么也许 Arena<T>
适合你。它将提供一个比普通 Vec<T>
更方便的 API。
示例
使用 Arena<T>
构建的一些数据结构