Skip to content

Commit 24312b3

Browse files
committed
Refactor to ignore iterator return values
1 parent d25a8c5 commit 24312b3

2 files changed

Lines changed: 1 addition & 127 deletions

File tree

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

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
var setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );
2424
var isFunction = require( '@stdlib/assert/is-function' );
2525
var isIteratorLike = require( '@stdlib/assert/is-iterator-like' );
26-
var hasOwnProp = require( '@stdlib/assert/has-own-property' );
2726
var iteratorSymbol = require( '@stdlib/symbol/iterator' );
2827

2928

@@ -90,7 +89,6 @@ function iterUnshift( iterator ) {
9089
* @returns {Object} iterator protocol-compliant object
9190
*/
9291
function next() {
93-
var out;
9492
var v;
9593
if ( FLG === 2 ) {
9694
return {
@@ -101,17 +99,8 @@ function iterUnshift( iterator ) {
10199
v = iterator.next();
102100
if ( v.done ) {
103101
FLG = 2;
104-
out = {};
105-
if ( hasOwnProp( v, 'value' ) ) {
106-
out.value = v.value;
107-
}
108-
out.done = true;
109-
return out;
110102
}
111-
return {
112-
'value': v.value,
113-
'done': false
114-
};
103+
return v;
115104
}
116105
i += 1;
117106
if ( i >= items.length ) {

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

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

3131

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

6534
tape( 'main export is a function', function test( t ) {
@@ -340,90 +309,6 @@ tape( 'the function returns an iterator protocol-compliant object (no additional
340309
t.end();
341310
});
342311

343-
tape( 'the function returns an iterator protocol-compliant object (value+done)', function test( t ) {
344-
var expected;
345-
var values;
346-
var actual;
347-
var it;
348-
var i;
349-
350-
values = [ 1, 2, 3, 4 ];
351-
expected = [
352-
{
353-
'value': 5,
354-
'done': false
355-
},
356-
{
357-
'value': 6,
358-
'done': false
359-
},
360-
{
361-
'value': 1,
362-
'done': false
363-
},
364-
{
365-
'value': 2,
366-
'done': false
367-
},
368-
{
369-
'value': 3,
370-
'done': false
371-
},
372-
{
373-
'value': 4,
374-
'done': true
375-
}
376-
];
377-
378-
it = iterUnshift( createIterator( values ), 5, 6 );
379-
t.equal( it.next.length, 0, 'has zero arity' );
380-
381-
actual = [];
382-
for ( i = 0; i < expected.length; i++ ) {
383-
actual.push( it.next() );
384-
}
385-
t.deepEqual( actual, expected, 'returns expected values' );
386-
t.end();
387-
});
388-
389-
tape( 'the function returns an iterator protocol-compliant object (value+done; no additional arguments)', function test( t ) {
390-
var expected;
391-
var values;
392-
var actual;
393-
var it;
394-
var i;
395-
396-
values = [ 1, 2, 3, 4 ];
397-
expected = [
398-
{
399-
'value': 1,
400-
'done': false
401-
},
402-
{
403-
'value': 2,
404-
'done': false
405-
},
406-
{
407-
'value': 3,
408-
'done': false
409-
},
410-
{
411-
'value': 4,
412-
'done': true
413-
}
414-
];
415-
416-
it = iterUnshift( createIterator( values ) );
417-
t.equal( it.next.length, 0, 'has zero arity' );
418-
419-
actual = [];
420-
for ( i = 0; i < expected.length; i++ ) {
421-
actual.push( it.next() );
422-
}
423-
t.deepEqual( actual, expected, 'returns expected values' );
424-
t.end();
425-
});
426-
427312
tape( 'the returned iterator has a `return` method for closing an iterator (no argument)', function test( t ) {
428313
var it;
429314
var r;

0 commit comments

Comments
 (0)