(&mut self)
| 1346 | { |
| 1347 | #[inline] |
| 1348 | fn next_back(&mut self) -> Option<A::Item> { |
| 1349 | if self.removal_start < self.removal_end { |
| 1350 | match self.replacement.next_back() { |
| 1351 | Some(replacement) => { |
| 1352 | let removed = core::mem::replace( |
| 1353 | &mut self.parent[self.removal_end - 1], |
| 1354 | replacement, |
| 1355 | ); |
| 1356 | self.removal_end -= 1; |
| 1357 | Some(removed) |
| 1358 | } |
| 1359 | None => { |
| 1360 | let removed = self.parent.remove(self.removal_end - 1); |
| 1361 | self.removal_end -= 1; |
| 1362 | Some(removed) |
| 1363 | } |
| 1364 | } |
| 1365 | } else { |
| 1366 | None |
| 1367 | } |
| 1368 | } |
| 1369 | } |
| 1370 | |
| 1371 | impl<'p, A: Array, I: Iterator<Item = A::Item>> Drop |
no test coverage detected