diff --git a/lib/node_modules/@stdlib/blas/ext/find-index/lib/base.js b/lib/node_modules/@stdlib/blas/ext/find-index/lib/base.js index 7be8c1bf06a8..1afc95e4e658 100644 --- a/lib/node_modules/@stdlib/blas/ext/find-index/lib/base.js +++ b/lib/node_modules/@stdlib/blas/ext/find-index/lib/base.js @@ -21,6 +21,7 @@ // MODULES // var dtypes = require( '@stdlib/ndarray/dtypes' ); +var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' ); var gfindIndex = require( '@stdlib/blas/ext/base/ndarray/gfind-index' ); var factory = require( '@stdlib/ndarray/base/unary-reduce-strided1d-dispatch-by-factory' ); @@ -33,8 +34,14 @@ var policies = { 'output': 'integer_index_and_generic', 'casting': 'none' }; + +// Zero-dimensional ndarray specifying the default starting search index expected by `gfindIndex`: +var FROM_INDEX = scalar2ndarray( 0, { + 'dtype': 'generic' +}); + var table = { - 'default': gfindIndex + 'default': indexOf }; @@ -88,6 +95,21 @@ var table = { var findIndex = factory( table, [ idtypes ], odtypes, policies ); +// FUNCTIONS // + +/** +* Invokes `gfindIndex` with a default starting search index. +* +* @private +* @param {ArrayLikeObject} arrays - array-like object containing a one-dimensional input ndarray +* @param {Function} clbk - callback function +* @returns {integer} index +*/ +function indexOf( arrays, clbk ) { + return gfindIndex( [ arrays[ 0 ], FROM_INDEX ], clbk ); +} + + // EXPORTS // module.exports = findIndex;