multistackqueue

A crate for stack-allocated fixed-length multiqueues. A multiqueue is an array of a given number of queues, each able to be accessed independently.

Based on an original idea from Pollux3737.

Usage

The generic definition is the following :

rust MultiStackQueue<T, const N: usize, const M: usize>

With :

Example usecases

Examples

```rust use multistackqueue::MultiStackQueue;

[derive(Clone, Copy, Debug, PartialEq, Eq)]

struct TestStruct { a: usize, b: bool,
}

let mut msq: MultiStackQueue = MultiStackQueue::new(); let value = TestStruct { a: 42, b: false };

msq.push(7, value).unwrap();

assert_eq!(msq.pop(7).unwrap(), value); ```

Roadmap