| Crates.io | buffered-io |
| lib.rs | buffered-io |
| version | 0.6.0 |
| created_at | 2023-03-02 07:05:00.020319+00 |
| updated_at | 2025-10-01 20:25:47.053196+00 |
| description | Bufferering types for embedded-io |
| homepage | |
| repository | https://github.com/rmja/buffered-io |
| max_upload_size | |
| id | 798687 |
| size | 27,905 |
The buffered-io crate implements buffering for the embedded-io/embedded-io-async Read and Write traits.
tokio_test::block_on(async {
use buffered_io::asynch::BufferedWrite;
use embedded_io_async::Write;
let uart_tx = Vec::new(); // The underlying uart peripheral implementing Write to where buffered bytes are written
let mut write_buf = [0; 120];
let mut buffering = BufferedWrite::new(uart_tx, &mut write_buf);
buffering.write(b"hello").await.unwrap(); // This write is buffered
buffering.write(b" ").await.unwrap(); // This write is also buffered
buffering.write(b"world").await.unwrap(); // This write is also buffered
buffering.flush().await.unwrap(); // The string "hello world" is written to uart in one write
})