Rotating Buffer
… is a small helper data structure that allows a stack-allocated buffer to be reused while keeping data that couldn't be handled immediately.
Example:
use *;
let mut buf = new;
buf.get_append_only.copy_from_slice;
buf.add_len;
assert_eq!;
buf.rotate_right_and_resize_at;
assert_eq!;
assert_eq!;
buf.get_append_only.copy_from_slice;
buf.add_len;
assert_eq!;
buf.rotate_right_and_resize_at;
assert_eq!;
Inspired by a pairing session at Recurse Center 👩💻🐙