ipc-ring48 1.0.1

A bounded 48-byte POSIX shared-memory SPSC queue for Rust.
Documentation
use ipc_ring48::{Consumer, Producer, PushError};

fn main() -> std::io::Result<()> {
    ipc_ring48::unlink()?;

    let producer = Producer::create_or_open(8)?;
    let consumer = Consumer::open()?;

    for value in 0_u8..8 {
        producer.push([value; 48]).expect("queue has space");
    }

    assert_eq!(producer.push([9; 48]), Err(PushError::Full));

    for value in 0_u8..8 {
        let message = consumer.pop().expect("queue has a message");
        assert_eq!(message, [value; 48]);
    }

    assert_eq!(consumer.pop(), None);

    ipc_ring48::unlink()
}