LineBuffer - ringbuffer but for elements of different sizes

crates.io docs.rs Build Status

This crate is specifically for the following use case:

You can use it for example to buffer the stdout of a process per line.
It allows setting the amount of last lines to store and the size of bytes before wrapping.

Example

```rust use linebuffer::{typenum, LineBuffer};

// create a buffer of max 2048 entries/lines and 512KB data cache // with the additional flag type () let mut buffer: LineBuffer<(), typenum::U2048> = LineBuffer::new(512_000);

let data = String::from("Some data stuff"); buffer.insert(data.asbytes(),()); asserteq!(buffer.get(0),Some((data.as_bytes(), &()))); ```