@@ -26,65 +26,65 @@ var abs = require( '@stdlib/math/base/special/abs' );
2626// MAIN //
2727
2828/**
29- * Computes the minimum absolute value of a strided array, ignoring `NaN` values,
30- * and supports accessor protocol.
31- *
32- * @param {PositiveInteger } N - number of indexed elements
33- * @param {Object } x - input array object
34- * @param {Collection } x.data - input array data
35- * @param {Array<Function> } x.accessors - array element accessors
36- * @param {integer } strideX - stride length for `x`
37- * @param {NonNegativeInteger } offsetX - starting index for `x`
38- * @returns {Object } output array object
39- *
40- * @example
41- * var x = { data: [ -3.0, NaN, 2.0, -1.0 ], accessors: [ ( arr, i ) => arr[ i ] ] };
42- * var minAbs = nanminabs( 4, x, 1, 0 );
43- * // returns 1.0
44- */
29+ * Computes the minimum absolute value of a strided array, ignoring `NaN` values.
30+ * Supports accessor protocol.
31+ *
32+ * @param {PositiveInteger } N - number of indexed elements
33+ * @param {Object } x - input array object
34+ * @param {Collection } x.data - input array data
35+ * @param {Array<Function> } x.accessors - array element accessors
36+ * @param {integer } strideX - stride length for `x`
37+ * @param {NonNegativeInteger } offsetX - starting index for `x`
38+ * @returns {Object } output array object
39+ *
40+ * @example
41+ * var x = { data: [ -3.0, NaN, 2.0, -1.0 ], accessors: [ ( arr, i ) => arr[ i ] ] };
42+ * var minAbs = nanminabs( 4, x, 1, 0 );
43+ * // returns 1.0
44+ */
4545function nanminabs ( N , x , strideX , offsetX ) {
46- var xbuf ;
47- var get ;
48- var min ;
49- var ix ;
50- var v ;
51- var i ;
46+ var xbuf ;
47+ var get ;
48+ var min ;
49+ var ix ;
50+ var v ;
51+ var i ;
5252
53- // Cache reference to array data:
54- xbuf = x . data ;
53+ // Cache reference to array data:
54+ xbuf = x . data ;
5555
56- // Cache a reference to the element accessor:
57- get = x . accessors [ 0 ] ;
56+ // Cache a reference to the element accessor:
57+ get = x . accessors [ 0 ] ;
5858
59- if ( N === 1 || strideX === 0 ) {
60- return get ? abs ( get ( xbuf , offsetX ) ) : abs ( xbuf [ offsetX ] ) ;
61- }
59+ if ( N === 1 || strideX === 0 ) {
60+ return ( get ? abs ( get ( xbuf , offsetX ) ) : abs ( xbuf [ offsetX ] ) ) ;
61+ }
6262
63- ix = offsetX ;
64- for ( i = 0 ; i < N ; i ++ ) {
65- v = get ? get ( xbuf , ix ) : xbuf [ ix ] ;
66- if ( v === v ) {
67- break ;
68- }
69- ix += strideX ;
70- }
71- if ( i === N ) {
72- return NaN ;
73- }
74- min = abs ( v ) ;
63+ ix = offsetX ;
64+ for ( i = 0 ; i < N ; i ++ ) {
65+ v = get ? get ( xbuf , ix ) : xbuf [ ix ] ;
66+ if ( v === v ) {
67+ break ;
68+ }
69+ ix += strideX ;
70+ }
71+ if ( i === N ) {
72+ return NaN ;
73+ }
74+ min = abs ( v ) ;
7575
76- for ( i += 1 ; i < N ; i ++ ) {
77- ix += strideX ;
78- v = get ? get ( xbuf , ix ) : xbuf [ ix ] ;
79- v = abs ( v ) ;
80- if ( isnan ( v ) ) {
81- continue ;
82- }
83- if ( v < min ) {
84- min = v ;
85- }
86- }
87- return min ;
76+ for ( i += 1 ; i < N ; i ++ ) {
77+ ix += strideX ;
78+ v = get ? get ( xbuf , ix ) : xbuf [ ix ] ;
79+ v = abs ( v ) ;
80+ if ( isnan ( v ) ) {
81+ continue ;
82+ }
83+ if ( v < min ) {
84+ min = v ;
85+ }
86+ }
87+ return min ;
8888}
8989
9090// EXPORTS //
0 commit comments