arraydeque

build status codecov crates.io docs.rs

A circular buffer with fixed capacity. Requires Rust 1.20+.

This crate is inspired by bluss/arrayvec

Documentation

Usage

First, add the following to your Cargo.toml:

toml [dependencies] arraydeque = "0.4"

Next, add this to your crate root:

rust extern crate arraydeque;

Currently arraydeque by default links to the standard library, but if you would instead like to use arraydeque in a #![no_std] situation or crate you can request this via:

toml [dependencies] arraydeque = { version = "0.4", default-features = false }

Example

```rust extern crate arraydeque;

use arraydeque::ArrayDeque;

fn main() { let mut deque: ArrayDeque<[; 2]> = ArrayDeque::new(); asserteq!(deque.capacity(), 2); assert_eq!(deque.len(), 0);

deque.push_back(1);
deque.push_back(2);
assert_eq!(deque.len(), 2);

assert_eq!(deque.pop_front(), Some(1));
assert_eq!(deque.pop_front(), Some(2));
assert_eq!(deque.pop_front(), None);

} ```

Changelog

Contribution

All kinds of contribution are welcomed.

License

Licensed under MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)