equal
deleted
inserted
replaced
141 fn as_mut(&mut self) -> &mut [T] { |
141 fn as_mut(&mut self) -> &mut [T] { |
142 self.as_mut_slice() |
142 self.as_mut_slice() |
143 } |
143 } |
144 } |
144 } |
145 |
145 |
|
146 impl<T: Clone> Vec2D<T> { |
|
147 pub fn from_iter<I: IntoIterator<Item = T>>(iter: I, size: &Size) -> Option<Vec2D<T>> { |
|
148 let data: Vec<T> = iter.into_iter().collect(); |
|
149 if size.width * size.height == data.len() { |
|
150 Some(Vec2D { data, size: *size }) |
|
151 } else { |
|
152 None |
|
153 } |
|
154 } |
|
155 } |
|
156 |
146 #[cfg(test)] |
157 #[cfg(test)] |
147 mod tests { |
158 mod tests { |
148 use super::*; |
159 use super::*; |
149 |
160 |
150 #[test] |
161 #[test] |