Skip to content

Commit e07dae5

Browse files
committed
Refactor to ignore iterator return values
1 parent 1552479 commit e07dae5

2 files changed

Lines changed: 1 addition & 139 deletions

File tree

lib/node_modules/@stdlib/iter/fill/lib/main.js

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ var setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-propert
2424
var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' ).isPrimitive;
2525
var isFunction = require( '@stdlib/assert/is-function' );
2626
var isIteratorLike = require( '@stdlib/assert/is-iterator-like' );
27-
var hasOwnProp = require( '@stdlib/assert/has-own-property' );
2827
var iteratorSymbol = require( '@stdlib/symbol/iterator' );
2928

3029

@@ -112,7 +111,6 @@ function iterFill( iterator, value, begin, end ) {
112111
* @returns {Object} iterator protocol-compliant object
113112
*/
114113
function next() {
115-
var out;
116114
var v;
117115
if ( FLG ) {
118116
return {
@@ -123,12 +121,7 @@ function iterFill( iterator, value, begin, end ) {
123121
i += 1;
124122
if ( v.done ) {
125123
FLG = true;
126-
out = {};
127-
if ( hasOwnProp( v, 'value' ) ) {
128-
out.value = ( i >= N && i < M ) ? value : v.value;
129-
}
130-
out.done = true;
131-
return out;
124+
return v;
132125
}
133126
return {
134127
'value': ( i >= N && i < M ) ? value : v.value,

lib/node_modules/@stdlib/iter/fill/test/test.js

Lines changed: 0 additions & 131 deletions
Original file line numberDiff line numberDiff line change
@@ -28,37 +28,6 @@ var iteratorSymbol = require( '@stdlib/symbol/iterator' );
2828
var iterFill = require( './../lib' );
2929

3030

31-
// FUNCTIONS //
32-
33-
function createIterator( arr ) {
34-
var len;
35-
var it;
36-
var i;
37-
38-
len = arr.length;
39-
i = -1;
40-
41-
it = {};
42-
it.next = next;
43-
44-
return it;
45-
46-
function next() {
47-
var out;
48-
i += 1;
49-
if ( i < len ) {
50-
out = {};
51-
out.value = arr[ i ];
52-
out.done = ( i === len-1 );
53-
return out;
54-
}
55-
return {
56-
'done': true
57-
};
58-
}
59-
}
60-
61-
6231
// TESTS //
6332

6433
tape( 'main export is a function', function test( t ) {
@@ -605,106 +574,6 @@ tape( 'the function returns un-"filled" iterated values if the third argument is
605574
t.end();
606575
});
607576

608-
tape( 'the function returns an iterator protocol-compliant object (value+done)', function test( t ) {
609-
var expected;
610-
var values;
611-
var actual;
612-
var it;
613-
var i;
614-
615-
values = [ 0, 0, 0, 1, 2, 3, 4 ];
616-
expected = [
617-
{
618-
'value': 0,
619-
'done': false
620-
},
621-
{
622-
'value': 0,
623-
'done': false
624-
},
625-
{
626-
'value': 0,
627-
'done': false
628-
},
629-
{
630-
'value': 3.14,
631-
'done': false
632-
},
633-
{
634-
'value': 3.14,
635-
'done': false
636-
},
637-
{
638-
'value': 3.14,
639-
'done': false
640-
},
641-
{
642-
'value': 3.14,
643-
'done': true
644-
}
645-
];
646-
647-
it = iterFill( createIterator( values ), 3.14, 3, values.length );
648-
t.equal( it.next.length, 0, 'has zero arity' );
649-
650-
actual = [];
651-
for ( i = 0; i < expected.length; i++ ) {
652-
actual.push( it.next() );
653-
}
654-
t.deepEqual( actual, expected, 'returns expected values' );
655-
t.end();
656-
});
657-
658-
tape( 'the function returns an iterator protocol-compliant object (value+done)', function test( t ) {
659-
var expected;
660-
var values;
661-
var actual;
662-
var it;
663-
var i;
664-
665-
values = [ 0, 0, 0, 1, 2, 3, 4 ];
666-
expected = [
667-
{
668-
'value': 3.14,
669-
'done': false
670-
},
671-
{
672-
'value': 3.14,
673-
'done': false
674-
},
675-
{
676-
'value': 3.14,
677-
'done': false
678-
},
679-
{
680-
'value': 1,
681-
'done': false
682-
},
683-
{
684-
'value': 2,
685-
'done': false
686-
},
687-
{
688-
'value': 3,
689-
'done': false
690-
},
691-
{
692-
'value': 4,
693-
'done': true
694-
}
695-
];
696-
697-
it = iterFill( createIterator( values ), 3.14, 0, 3 );
698-
t.equal( it.next.length, 0, 'has zero arity' );
699-
700-
actual = [];
701-
for ( i = 0; i < expected.length; i++ ) {
702-
actual.push( it.next() );
703-
}
704-
t.deepEqual( actual, expected, 'returns expected values' );
705-
t.end();
706-
});
707-
708577
tape( 'the returned iterator has a `return` method for closing an iterator (no argument)', function test( t ) {
709578
var it;
710579
var r;

0 commit comments

Comments
 (0)