{{alias}}( shape, strides, offset, order, idx, mode ) Converts a linear index to an array of subscripts. When provided a stride array containing negative strides, if an `offset` is greater than `0`, the function interprets the linear index as an index into the underlying data buffer for the array, thus returning subscripts from the perspective of that buffer. If an `offset` is equal to `0`, the function treats the linear index as an index into an array view, thus returning subscripts from the perspective of that view. In short, from the perspective of a view, view data is always ordered. Parameters ---------- shape: ArrayLike Array shape. strides: ArrayLike Stride array. offset: integer Location of the first indexed value based on the stride array. order: string Specifies whether an array is row-major (C-style) or column-major (Fortran-style). idx: integer Linear index. mode: string Specifies how to handle a linear index which exceeds array dimensions. If equal to 'throw', the function throws an error when a linear index exceeds array dimensions. If equal to 'wrap', the function wraps around a linear index exceeding array dimensions using modulo arithmetic. If equal to 'clamp', the function sets a linear index exceeding array dimensions to either `0` (minimum linear index) or the maximum linear index. Default: 'throw'. Returns ------- out: Array Subscripts. Examples -------- > var d = [ 3, 3, 3 ]; > var s = [ 9, 3, 1 ]; > var out = {{alias}}( d, s, 0, 'row-major', 17, 'throw' ) [ 1, 2, 2 ] {{alias}}.assign( shape, strides, offset, order, idx, mode, out ) Converts a linear index to an array of subscripts and assigns results to a provided output array. When provided a stride array containing negative strides, if an `offset` is greater than `0`, the function interprets the linear index as an index into the underlying data buffer for the array, thus returning subscripts from the perspective of that buffer. If an `offset` is equal to `0`, the function treats the linear index as an index into an array view, thus returning subscripts from the perspective of that view. In short, from the perspective of a view, view data is always ordered. Parameters ---------- shape: ArrayLike Array shape. strides: ArrayLike Stride array. offset: integer Location of the first indexed value based on the stride array. order: string Specifies whether an array is row-major (C-style) or column-major (Fortran-style). idx: integer Linear index. mode: string Specifies how to handle a linear index which exceeds array dimensions. If equal to 'throw', the function throws an error when a linear index exceeds array dimensions. If equal to 'wrap', the function wraps around a linear index exceeding array dimensions using modulo arithmetic. If equal to 'clamp', the function sets a linear index exceeding array dimensions to either `0` (minimum linear index) or the maximum linear index. Default: 'throw'. out: Array|TypedArray|Object Output object. Returns ------- out: Array|TypedArray|Object Subscripts. Examples -------- > var d = [ 3, 3, 3 ]; > var s = [ 9, 3, 1 ]; > var out = [ 0, 0, 0 ]; > var sub = {{alias}}.assign( d, s, 0, 'row-major', 17, 'throw', out ) [ 1, 2, 2 ] > var bool = ( sub === out ) true See Also --------