@@ -23,9 +23,9 @@ <h1><a href="index.html">All files</a> assign.js</h1>
2323 < div class ='clearfix '>
2424
2525 < div class ='fl pad1y space-right2 '>
26- < span class ="strong "> 98.46 % </ span >
26+ < span class ="strong "> 98.51 % </ span >
2727 < span class ="quiet "> Statements</ span >
28- < span class ='fraction '> 128/130 </ span >
28+ < span class ='fraction '> 133/135 </ span >
2929 </ div >
3030
3131
@@ -44,9 +44,9 @@ <h1><a href="index.html">All files</a> assign.js</h1>
4444
4545
4646 < div class ='fl pad1y space-right2 '>
47- < span class ="strong "> 98.46 % </ span >
47+ < span class ="strong "> 98.51 % </ span >
4848 < span class ="quiet "> Lines</ span >
49- < span class ='fraction '> 128/130 </ span >
49+ < span class ='fraction '> 133/135 </ span >
5050 </ div >
5151
5252
@@ -193,7 +193,12 @@ <h1><a href="index.html">All files</a> assign.js</h1>
193193< a name ='L128 '> </ a > < a href ='#L128 '> 128</ a >
194194< a name ='L129 '> </ a > < a href ='#L129 '> 129</ a >
195195< a name ='L130 '> </ a > < a href ='#L130 '> 130</ a >
196- < a name ='L131 '> </ a > < a href ='#L131 '> 131</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
196+ < a name ='L131 '> </ a > < a href ='#L131 '> 131</ a >
197+ < a name ='L132 '> </ a > < a href ='#L132 '> 132</ a >
198+ < a name ='L133 '> </ a > < a href ='#L133 '> 133</ a >
199+ < a name ='L134 '> </ a > < a href ='#L134 '> 134</ a >
200+ < a name ='L135 '> </ a > < a href ='#L135 '> 135</ a >
201+ < a name ='L136 '> </ a > < a href ='#L136 '> 136</ a > </ td > < td class ="line-coverage quiet "> < span class ="cline-any cline-yes "> 3x</ span >
197202< span class ="cline-any cline-yes "> 3x</ span >
198203< span class ="cline-any cline-yes "> 3x</ span >
199204< span class ="cline-any cline-yes "> 3x</ span >
@@ -282,6 +287,8 @@ <h1><a href="index.html">All files</a> assign.js</h1>
282287< span class ="cline-any cline-yes "> 3x</ span >
283288< span class ="cline-any cline-yes "> 3x</ span >
284289< span class ="cline-any cline-yes "> 3x</ span >
290+ < span class ="cline-any cline-yes "> 3x</ span >
291+ < span class ="cline-any cline-yes "> 96x</ span >
285292< span class ="cline-any cline-yes "> 96x</ span >
286293< span class ="cline-any cline-yes "> 96x</ span >
287294< span class ="cline-any cline-yes "> 96x</ span >
@@ -302,6 +309,7 @@ <h1><a href="index.html">All files</a> assign.js</h1>
302309< span class ="cline-any cline-yes "> 47x</ span >
303310< span class ="cline-any cline-yes "> 47x</ span >
304311< span class ="cline-any cline-yes "> 47x</ span >
312+ < span class ="cline-any cline-yes "> 47x</ span >
305313< span class ="cline-any cline-yes "> 38x</ span >
306314< span class ="cline-any cline-yes "> 38x</ span >
307315< span class ="cline-any cline-yes "> 38x</ span >
@@ -317,6 +325,8 @@ <h1><a href="index.html">All files</a> assign.js</h1>
317325< span class ="cline-any cline-yes "> 9x</ span >
318326< span class ="cline-any cline-yes "> 9x</ span >
319327< span class ="cline-any cline-yes "> 9x</ span >
328+ < span class ="cline-any cline-yes "> 9x</ span >
329+ < span class ="cline-any cline-yes "> 9x</ span >
320330< span class ="cline-any cline-yes "> 96x</ span >
321331< span class ="cline-any cline-yes "> 3x</ span >
322332< span class ="cline-any cline-yes "> 3x</ span >
@@ -345,6 +355,7 @@ <h1><a href="index.html">All files</a> assign.js</h1>
345355
346356// MODULES //
347357
358+ var hasOwnProp = require( '@stdlib/assert/has-own-property' );
348359var isndarrayLike = require( '@stdlib/assert/is-ndarray-like' );
349360var format = require( '@stdlib/string/format' );
350361var maybeBroadcastArrays = require( '@stdlib/ndarray/base/maybe-broadcast-arrays' );
@@ -413,6 +424,7 @@ <h1><a href="index.html">All files</a> assign.js</h1>
413424* // returns 5.0
414425*/
415426function assign( x, mask, out ) {
427+ var newOpts;
416428 var opts;
417429 var arrs;
418430 var key;
@@ -430,12 +442,13 @@ <h1><a href="index.html">All files</a> assign.js</h1>
430442 // Always explicitly specify output dtype to match the data input (first array):
431443 if ( arguments.length > 3 ) {
432444 opts = arguments[ 3 ];
445+
433446 // Only add dtype if opts is an object and doesn't already have dtype specified:
434447 if ( opts !== null && typeof opts === 'object' && !Array.isArray( opts ) && opts.dtype === void 0 ) {
435448 // Create a new options object with all original properties plus dtype:
436- var newOpts = {};
449+ newOpts = {};
437450 for ( key in opts ) {
438- if ( opts.hasOwnProperty( key ) ) {
451+ if ( hasOwnProp( opts, key ) ) {
439452 newOpts[ key ] = opts[ key ];
440453 }
441454 }
@@ -445,7 +458,9 @@ <h1><a href="index.html">All files</a> assign.js</h1>
445458 // Otherwise pass through as-is (will be validated by base):
446459 return base.assign( arrs[ 0 ], arrs[ 1 ], out, opts );
447460 }
448- opts = { 'dtype': arrs[ 0 ].dtype };
461+ opts = {
462+ 'dtype': arrs[ 0 ].dtype
463+ };
449464 return base.assign( arrs[ 0 ], arrs[ 1 ], out, opts );
450465}
451466
@@ -460,7 +475,7 @@ <h1><a href="index.html">All files</a> assign.js</h1>
460475 < div class ='footer quiet pad2 space-top1 center small '>
461476 Code coverage generated by
462477 < a href ="https://istanbul.js.org/ " target ="_blank " rel ="noopener noreferrer "> istanbul</ a >
463- at 2025-12-18T09:22:16.543Z
478+ at 2025-12-18T09:33:18.696Z
464479 </ div >
465480 < script src ="prettify.js "> </ script >
466481 < script >
0 commit comments