5 个不稳定版本
0.3.0 | 2022 年 5 月 19 日 |
---|---|
0.2.0 | 2022 年 4 月 26 日 |
0.1.2 | 2022 年 4 月 23 日 |
0.1.1 | 2022 年 4 月 23 日 |
0.1.0 | 2022 年 4 月 23 日 |
#98 在 #持久化
每月 23 次下载
120KB
2.5K SLoC
葡萄:持久化图数据结构
持久化: 克隆成本低,因此可以轻松保留(并修改)数据结构的旧版本。
数据结构
- 树: 有序子项的层次化、可索引的集合
- MapTree: 除了树之外,还维护一个键-节点映射
- 图: 由边连接的节点集合
- MapGraph: 也维护键-节点和键-边映射
- 竞技场: 用于构建任意图形类数据结构
替代方案
除非你特别需要持久化树或持久化图,否则我建议使用这些crate(这些更成熟,可能更快)
- 竞技场:generational-arena
- 树:id_tree
- 图:petgraph
如果你需要简单的持久化数据结构(列表、映射),请查看
状态
这个库只支持我非常具体的使用场景所需的。
没有基准测试;性能可能远不及其他库,但这对我很好。
用例
只有在你需要可以相对便宜地克隆和操作图结构时,这个库才有用。
例如,如果你正在构建一个将状态存储在图结构中的应用程序,并且需要高效的撤销-重做功能,你可能需要在内存中存储图的历史副本。为了有效地这样做,这些副本应该共享图未更改的部分。
依赖关系
~1MB
~28K SLoC