Crate log_buffer [−] [src]
log_buffer provides a way to record and extract logs without allocation. It achieves this by utilizing a ring buffer, similar to a *nix dmesg facility.
Usage example
use log_buffer::LogBuffer; use std::fmt::Write; let mut log_storage = [0; 16]; let mut log_buffer = LogBuffer::new(&mut log_storage); write!(log_buffer, "\nfirst\n").unwrap(); write!(log_buffer, "second\n").unwrap(); write!(log_buffer, "third\n").unwrap(); assert_eq!(log_buffer.extract(), "st\nsecond\nthird\n"); assert_eq!(log_buffer.extract_lines().collect::<Vec<_>>(), vec!["second", "third"]);
Structs
LogBuffer |
A ring buffer that stores UTF-8 text. |