5个版本 (破坏性)
0.5.0 | 2023年4月16日 |
---|---|
0.4.0 | 2021年1月17日 |
0.3.0 | 2020年9月8日 |
0.2.0 | 2020年8月24日 |
0.1.0 | 2019年5月16日 |
#1504 在 算法 中
每月下载量 19,520
在 18 个crate中使用 (via varisat)
42KB
566 行
vec_mut_scan
在向量和项目删除时进行前向扫描。
提供了一个类似迭代器的包装器 VecMutScan
,它可以在其上执行修改和删除项目,同时保持项目顺序,并且每个项目最多移动一次,即使删除了项目。迭代过程中丢弃 VecMutScan
会在向量中保留剩余的项目。
这可以视为 Vec
的 retain
和 drain
的扩展。它也非常类似于不稳定版本 drain_filter
,但稍微更灵活。与 drain_filter
不同,它指定了删除行为(保留所有后续元素)。它也不需要在闭包中执行过滤,这提供了额外的灵活性,但牺牲了无法实现 Iterator
特性。
还提供了一个 VecGrowScan
包装器,它扩展了 VecMutScan
以允许在迭代过程中插入项目。这可能需要额外的项目移动和临时存储,但仍然以线性时间运行。
许可证
此软件可在Zero-Clause BSD许可证下使用,有关完整的许可信息和例外情况,请参阅COPYRIGHT。
贡献
除非您明确声明,否则您提交的任何有意包含在此软件中的贡献都应按照COPYRIGHT 中定义的许可证进行许可。