use embytes_buffer::{Buffer, BufferWriter, ReadWrite};
use embedded_io::{Read, Write};
fn main () {
let mut bytes = [0; 1024];
let mut buffer = Buffer::new(&mut bytes);
buffer.write_all("abc".as_bytes()).unwrap();
let mut writer = buffer.create_writer();
writer[0] = 36; drop(writer);
let mut writer = buffer.create_writer();
writer[0] = 100; writer[1] = 101; writer[2] = 102;
writer.commit(3).unwrap();
drop(writer);
let mut result = [0; 1024];
let bytes_read = buffer.read(&mut result).unwrap();
assert_eq!("abcdef".as_bytes(), &result[..bytes_read]);
}