fn copy_region<T: Copy>( values: &VecDeque<T>, start: usize, len: usize, out: &mut [T], ) -> usize
Copy at most two contiguous regions, with no allocation or rearrangement.