10 个版本
使用旧的 Rust 2015
0.2.6 | 2020年7月27日 |
---|---|
0.2.5 | 2020年6月21日 |
0.2.4 | 2020年3月26日 |
0.2.3 | 2020年1月9日 |
0.1.2 | 2017年7月21日 |
#960 在 数据结构
13,842 每月下载量
在 27 个 包(16 个直接)中使用
25KB
512 代码行
circular-queue
类似环形缓冲区的队列容器。以固定容量创建。当超出容量时,新项目会覆盖旧项目。支持按最新到最老和最老到最新的顺序迭代。
许可证
许可方式为以下之一
- Apache 许可证 2.0 版,(LICENSE-APACHE 或 http://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
lib.rs
:
类似环形缓冲区的队列。
创建 CircularQueue<T>
时具有固定容量,然后开始推送项目。当队列容量不足时,新项目从最旧的开始覆盖旧项目。
存在内置迭代器,可以按最新到最老和最老到最新的顺序进行迭代。
如果使用 iter()
迭代两个队列,则认为它们相等。
启用 serde_support
功能以支持 Serde。
示例
use circular_queue::CircularQueue;
let mut queue = CircularQueue::with_capacity(3);
queue.push(1);
queue.push(2);
queue.push(3);
queue.push(4);
assert_eq!(queue.len(), 3);
let mut iter = queue.iter();
assert_eq!(iter.next(), Some(&4));
assert_eq!(iter.next(), Some(&3));
assert_eq!(iter.next(), Some(&2));
依赖关系
~0–350KB