(&self, f: F)
| 434 | } |
| 435 | |
| 436 | fn contiguous_or_collect<R, F: FnOnce(&[u8]) -> R>(&self, f: F) -> R { |
| 437 | let borrowed; |
| 438 | let mut collected; |
| 439 | let v = if let Some(bytes) = self.as_contiguous() { |
| 440 | borrowed = bytes; |
| 441 | &*borrowed |
| 442 | } else { |
| 443 | collected = vec![]; |
| 444 | self.append_to(&mut collected); |
| 445 | &collected |
| 446 | }; |
| 447 | f(v) |
| 448 | } |
| 449 | |
| 450 | /// clone data from memoryview |
| 451 | /// keep the shape, convert to contiguous |
no test coverage detected