(dimension: u64, slice_element: SliceElement, index: u64)
| 64 | } |
| 65 | |
| 66 | fn slice_1d_index(dimension: u64, slice_element: SliceElement, index: u64) -> Result<u64> { |
| 67 | let (begin, _, step) = normalize_subarray(dimension, slice_element)?; |
| 68 | let result = begin + step * (index as i64); |
| 69 | if result < 0 { |
| 70 | Err(runtime_error!("Negative index")) |
| 71 | } else { |
| 72 | Ok(result as u64) |
| 73 | } |
| 74 | } |
| 75 | |
| 76 | #[doc(hidden)] |
| 77 | pub fn get_clean_slice(shape: ArrayShape, slice: Slice) -> Result<Slice> { |
no test coverage detected