@@ -25,14 +25,14 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
25
25
< div class ='fl pad1y space-right2 '>
26
26
< span class ="strong "> 100% </ span >
27
27
< span class ="quiet "> Statements</ span >
28
- < span class ='fraction '> 113/113 </ span >
28
+ < span class ='fraction '> 80/80 </ span >
29
29
</ div >
30
30
31
31
32
32
< div class ='fl pad1y space-right2 '>
33
33
< span class ="strong "> 100% </ span >
34
34
< span class ="quiet "> Branches</ span >
35
- < span class ='fraction '> 14/14 </ span >
35
+ < span class ='fraction '> 2/2 </ span >
36
36
</ div >
37
37
38
38
@@ -46,7 +46,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
46
46
< div class ='fl pad1y space-right2 '>
47
47
< span class ="strong "> 100% </ span >
48
48
< span class ="quiet "> Lines</ span >
49
- < span class ='fraction '> 113/113 </ span >
49
+ < span class ='fraction '> 80/80 </ span >
50
50
</ div >
51
51
52
52
@@ -143,40 +143,13 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
143
143
< a name ='L78 '> </ a > < a href ='#L78 '> 78</ a >
144
144
< a name ='L79 '> </ a > < a href ='#L79 '> 79</ a >
145
145
< a name ='L80 '> </ a > < a href ='#L80 '> 80</ a >
146
- < a name ='L81 '> </ a > < a href ='#L81 '> 81</ a >
147
- < a name ='L82 '> </ a > < a href ='#L82 '> 82</ a >
148
- < a name ='L83 '> </ a > < a href ='#L83 '> 83</ a >
149
- < a name ='L84 '> </ a > < a href ='#L84 '> 84</ a >
150
- < a name ='L85 '> </ a > < a href ='#L85 '> 85</ a >
151
- < a name ='L86 '> </ a > < a href ='#L86 '> 86</ a >
152
- < a name ='L87 '> </ a > < a href ='#L87 '> 87</ a >
153
- < a name ='L88 '> </ a > < a href ='#L88 '> 88</ a >
154
- < a name ='L89 '> </ a > < a href ='#L89 '> 89</ a >
155
- < a name ='L90 '> </ a > < a href ='#L90 '> 90</ a >
156
- < a name ='L91 '> </ a > < a href ='#L91 '> 91</ a >
157
- < a name ='L92 '> </ a > < a href ='#L92 '> 92</ a >
158
- < a name ='L93 '> </ a > < a href ='#L93 '> 93</ a >
159
- < a name ='L94 '> </ a > < a href ='#L94 '> 94</ a >
160
- < a name ='L95 '> </ a > < a href ='#L95 '> 95</ a >
161
- < a name ='L96 '> </ a > < a href ='#L96 '> 96</ a >
162
- < a name ='L97 '> </ a > < a href ='#L97 '> 97</ a >
163
- < a name ='L98 '> </ a > < a href ='#L98 '> 98</ a >
164
- < a name ='L99 '> </ a > < a href ='#L99 '> 99</ a >
165
- < a name ='L100 '> </ a > < a href ='#L100 '> 100</ a >
166
- < a name ='L101 '> </ a > < a href ='#L101 '> 101</ a >
167
- < a name ='L102 '> </ a > < a href ='#L102 '> 102</ a >
168
- < a name ='L103 '> </ a > < a href ='#L103 '> 103</ a >
169
- < a name ='L104 '> </ a > < a href ='#L104 '> 104</ a >
170
- < a name ='L105 '> </ a > < a href ='#L105 '> 105</ a >
171
- < a name ='L106 '> </ a > < a href ='#L106 '> 106</ a >
172
- < a name ='L107 '> </ a > < a href ='#L107 '> 107</ a >
173
- < a name ='L108 '> </ a > < a href ='#L108 '> 108</ a >
174
- < a name ='L109 '> </ a > < a href ='#L109 '> 109</ a >
175
- < a name ='L110 '> </ a > < a href ='#L110 '> 110</ a >
176
- < a name ='L111 '> </ a > < a href ='#L111 '> 111</ a >
177
- < a name ='L112 '> </ a > < a href ='#L112 '> 112</ a >
178
- < a name ='L113 '> </ a > < a href ='#L113 '> 113</ a >
179
- < a name ='L114 '> </ a > < a href ='#L114 '> 114</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 2x</ span >
146
+ < a name ='L81 '> </ a > < a href ='#L81 '> 81</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 2x</ span >
147
+ < span class ="cline-any cline-yes "> 2x</ span >
148
+ < span class ="cline-any cline-yes "> 2x</ span >
149
+ < span class ="cline-any cline-yes "> 2x</ span >
150
+ < span class ="cline-any cline-yes "> 2x</ span >
151
+ < span class ="cline-any cline-yes "> 2x</ span >
152
+ < span class ="cline-any cline-yes "> 2x</ span >
180
153
< span class ="cline-any cline-yes "> 2x</ span >
181
154
< span class ="cline-any cline-yes "> 2x</ span >
182
155
< span class ="cline-any cline-yes "> 2x</ span >
@@ -245,45 +218,6 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
245
218
< span class ="cline-any cline-yes "> 10x</ span >
246
219
< span class ="cline-any cline-yes "> 10x</ span >
247
220
< span class ="cline-any cline-yes "> 10x</ span >
248
- < span class ="cline-any cline-yes "> 10x</ span >
249
- < span class ="cline-any cline-yes "> 10x</ span >
250
- < span class ="cline-any cline-yes "> 10x</ span >
251
- < span class ="cline-any cline-yes "> 10x</ span >
252
- < span class ="cline-any cline-yes "> 10x</ span >
253
- < span class ="cline-any cline-yes "> 10x</ span >
254
- < span class ="cline-any cline-yes "> 2x</ span >
255
- < span class ="cline-any cline-yes "> 2x</ span >
256
- < span class ="cline-any cline-yes "> 8x</ span >
257
- < span class ="cline-any cline-yes "> 8x</ span >
258
- < span class ="cline-any cline-yes "> 8x</ span >
259
- < span class ="cline-any cline-yes "> 10x</ span >
260
- < span class ="cline-any cline-yes "> 1x</ span >
261
- < span class ="cline-any cline-yes "> 10x</ span >
262
- < span class ="cline-any cline-yes "> 7x</ span >
263
- < span class ="cline-any cline-yes "> 7x</ span >
264
- < span class ="cline-any cline-yes "> 10x</ span >
265
- < span class ="cline-any cline-yes "> 1x</ span >
266
- < span class ="cline-any cline-yes "> 10x</ span >
267
- < span class ="cline-any cline-yes "> 7x</ span >
268
- < span class ="cline-any cline-yes "> 7x</ span >
269
- < span class ="cline-any cline-yes "> 10x</ span >
270
- < span class ="cline-any cline-yes "> 1x</ span >
271
- < span class ="cline-any cline-yes "> 10x</ span >
272
- < span class ="cline-any cline-yes "> 7x</ span >
273
- < span class ="cline-any cline-yes "> 7x</ span >
274
- < span class ="cline-any cline-yes "> 8x</ span >
275
- < span class ="cline-any cline-yes "> 8x</ span >
276
- < span class ="cline-any cline-yes "> 8x</ span >
277
- < span class ="cline-any cline-yes "> 8x</ span >
278
- < span class ="cline-any cline-yes "> 8x</ span >
279
- < span class ="cline-any cline-yes "> 8x</ span >
280
- < span class ="cline-any cline-yes "> 10x</ span >
281
- < span class ="cline-any cline-yes "> 33x</ span >
282
- < span class ="cline-any cline-yes "> 33x</ span >
283
- < span class ="cline-any cline-yes "> 33x</ span >
284
- < span class ="cline-any cline-yes "> 33x</ span >
285
- < span class ="cline-any cline-yes "> 33x</ span >
286
- < span class ="cline-any cline-yes "> 10x</ span >
287
221
< span class ="cline-any cline-yes "> 2x</ span >
288
222
< span class ="cline-any cline-yes "> 2x</ span >
289
223
< span class ="cline-any cline-yes "> 2x</ span >
@@ -309,6 +243,12 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
309
243
310
244
'use strict';
311
245
246
+ // MODULES //
247
+
248
+ var stride2offset = require( '@stdlib/strided/base/stride2offset' );
249
+ var ndarray = require( './accessors.ndarray.js' );
250
+
251
+
312
252
// MAIN //
313
253
314
254
/**
@@ -347,55 +287,16 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
347
287
* // => <Float64Array>[ 4.0, 8.0, 12.0, 16.0, 20.0 ]
348
288
*/
349
289
function binary( arrays, shape, strides, accessors, fcn ) {
350
- var xget;
351
- var yget;
352
- var zset;
353
- var sx;
354
- var sy;
355
- var sz;
356
- var ix;
357
- var iy;
358
- var iz;
359
- var x;
360
- var y;
361
- var z;
290
+ var offsets;
362
291
var N;
363
- var i;
364
292
365
293
N = shape[ 0 ];
366
- if ( N <= 0 ) {
367
- return;
368
- }
369
- sx = strides[ 0 ];
370
- sy = strides[ 1 ];
371
- sz = strides[ 2 ];
372
- if ( sx < 0 ) {
373
- ix = (1-N) * sx;
374
- } else {
375
- ix = 0;
376
- }
377
- if ( sy < 0 ) {
378
- iy = (1-N) * sy;
379
- } else {
380
- iy = 0;
381
- }
382
- if ( sz < 0 ) {
383
- iz = (1-N) * sz;
384
- } else {
385
- iz = 0;
386
- }
387
- x = arrays[ 0 ];
388
- y = arrays[ 1 ];
389
- z = arrays[ 2 ];
390
- xget = accessors[ 0 ];
391
- yget = accessors[ 1 ];
392
- zset = accessors[ 2 ];
393
- for ( i = 0; i < N; i++ ) {
394
- zset( z, iz, fcn( xget( x, ix ), yget( y, iy ) ) );
395
- ix += sx;
396
- iy += sy;
397
- iz += sz;
398
- }
294
+ offsets = [
295
+ stride2offset( N, strides[ 0 ] ),
296
+ stride2offset( N, strides[ 1 ] ),
297
+ stride2offset( N, strides[ 2 ] )
298
+ ];
299
+ return ndarray( arrays, shape, strides, offsets, accessors, fcn );
399
300
}
400
301
401
302
@@ -409,7 +310,7 @@ <h1><a href="../../../../index.html">All files</a> / <a href="index.html">stride
409
310
< div class ='footer quiet pad2 space-top1 center small '>
410
311
Code coverage generated by
411
312
< a href ="https://istanbul.js.org/ " target ="_blank " rel ="noopener noreferrer "> istanbul</ a >
412
- at 2024-07-06T19:31:00.362Z
313
+ at 2024-07-06T21:35:27.147Z
413
314
</ div >
414
315
< script src ="../../../../prettify.js "> </ script >
415
316
< script >
0 commit comments