unsafe fn buffer_as_mut_slice(&mut self) -> &mut [T] {
        unsafe { slice::from_raw_parts_mut(self.ptr(), self.cap()) }
    }
Copies a potentially wrapping block of memory len long from src to dest.
(abs(dst - src) + len) must be no larger than cap() (There must be a
benchmarks/haystacks/code/rust-library.rs