Delegate NonZeroPerDimKernel
IL-emitted coord expand for np.nonzero: converts a flat-index buffer
(monotonic ascending C-order) into ndim separate per-dim coordinate
columns via incremental coord advance — no per-element divmod.
Dtype-agnostic (operates on long*).
outCols is a pointer to an array of ndim
long* pointers, one per output dimension. outCols[d][i] receives
the coordinate along dim d for the i'th non-zero element.
public delegate void NonZeroPerDimKernel(long* flat, long count, long* dims, long* dimStrides, long ndim, long** outCols)
Parameters
flatlong*- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
countlong- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
dimslong*- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
dimStrideslong*- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
ndimlong- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
outColslong**- IL-emitted coord expand for np.nonzero: converts a flat-index buffer (monotonic ascending C-order) into ndim separate per-dim coordinate columns via incremental coord advance — no per-element divmod. Dtype-agnostic (operates on long*). outCols is a pointer to an array of ndim long* pointers, one per output dimension. outCols[d][i] receives the coordinate along dim d for the i'th non-zero element.
- Extension Methods