&*buf_v.offset(j),
(i - j) as uint);
ptr::copy_nonoverlapping_memory(buf_v.offset(j),
- &tmp as *const T,
+ &tmp,
1);
mem::forget(tmp);
}
#[test]
fn test_chunksator() {
+ use core::iter::ExactSizeIterator;
+
let v = &[1i,2,3,4,5];
+ assert_eq!(v.chunks(2).len(), 3);
+
let chunks: &[&[int]] = &[&[1i,2], &[3,4], &[5]];
assert_eq!(v.chunks(2).collect::<Vec<&[int]>>(), chunks);
let chunks: &[&[int]] = &[&[1i,2,3], &[4,5]];
}
let empty: Vec<int> = vec![];
test_show_vec!(empty, "[]");
- test_show_vec!(vec![1i], "[1i]");
- test_show_vec!(vec![1i, 2, 3], "[1i, 2i, 3i]");
+ test_show_vec!(vec![1i], "[1]");
+ test_show_vec!(vec![1i, 2, 3], "[1, 2, 3]");
test_show_vec!(vec![vec![], vec![1u], vec![1u, 1u]],
- "[[], [1u], [1u, 1u]]");
+ "[[], [1], [1, 1]]");
let empty_mut: &mut [int] = &mut[];
test_show_vec!(empty_mut, "[]");
let v: &mut[int] = &mut[1];
- test_show_vec!(v, "[1i]");
+ test_show_vec!(v, "[1]");
let v: &mut[int] = &mut[1, 2, 3];
- test_show_vec!(v, "[1i, 2i, 3i]");
+ test_show_vec!(v, "[1, 2, 3]");
let v: &mut [&mut[uint]] = &mut[&mut[], &mut[1u], &mut[1u, 1u]];
- test_show_vec!(v, "[[], [1u], [1u, 1u]]");
+ test_show_vec!(v, "[[], [1], [1, 1]]");
}
#[test]
#[test]
fn test_mut_chunks() {
+ use core::iter::ExactSizeIterator;
+
let mut v = [0u8, 1, 2, 3, 4, 5, 6];
+ assert_eq!(v.chunks_mut(2).len(), 4);
for (i, chunk) in v.chunks_mut(3).enumerate() {
for x in chunk.iter_mut() {
*x = i as u8;