1个不稳定版本
0.1.0 | 2020年7月2日 |
---|
#1483 in 文件系统
10KB
122 行
compact_path_tree
一个用于在内存中高效表示可迭代路径树的简单库。这个实现不是为每个文件存储一个PathBuf
对象,而是存储一个单一的巨大PathBuf
,并使用相对路径组件来表示项目。例如,这个目录结构...
- outer
- a
- b
- c
- d
- e
...可以表示为以下路径
outer/a/../b/c/../d/e
这通常可以节省大量的内存,因为每个项目都需要至少两个机器字来存储除了文件名内容之外的内容,而此表示将每个条目的大小减少到大约四个字符。
然而,这种方法也有明显的局限性。一旦构建了树,它们就是不可变的,并且不能按任何特定顺序排序——唯一的保证是它们可以迭代以提供表示的路径的深度优先遍历。