sparse slice with pure structure. Any operations on structure of a slice are not allowed.
import mir.array.allocation: array; import mir.ndslice.sorting: sort; alias CV = CoordinateValue!(double, 2); auto slice = sparse!double(3, 3); slice[] = [[0, 2, 1], [0, 0, 4], [6, 7, 0]]; assert(slice.byCoordinateValue.array.sort() == [ CV([0, 1], 2), CV([0, 2], 1), CV([1, 2], 4), CV([2, 0], 6), CV([2, 1], 7)]);
Returns unsorted forward range of (coordinate, value) pairs.