File tree Expand file tree Collapse file tree 3 files changed +24
-7
lines changed Expand file tree Collapse file tree 3 files changed +24
-7
lines changed Original file line number Diff line number Diff line change
1
+ import assert from 'assert' ;
2
+ import Node from './Node.js' ;
3
+ import _push from './_push.js' ;
4
+
5
+ /**
6
+ * Extend a list with an iterable.
7
+ *
8
+ * @param {Node } z The last node of the list to extend.
9
+ * @param {Iterable } iterable The input iterable.
10
+ * @return {Node } Last node of the extended list.
11
+ */
12
+ export default function _extend ( z , iterable ) {
13
+ assert ( z instanceof Node ) ;
14
+ let y = z ;
15
+
16
+ for ( const value of iterable ) {
17
+ y = _push ( y , value ) ;
18
+ }
19
+
20
+ return y ;
21
+ }
Original file line number Diff line number Diff line change 1
1
import Node from './Node.js' ;
2
- import _push from './_push .js' ;
2
+ import _extend from './_extend .js' ;
3
3
4
4
/**
5
5
* Creates a list from an input iterable.
@@ -14,11 +14,6 @@ export default function from(iterable) {
14
14
if ( event . done ) return null ;
15
15
16
16
const first = new Node ( event . value , null , null ) ;
17
- let last = first ;
18
-
19
- for ( const value of it ) {
20
- last = _push ( last , value ) ;
21
- }
22
-
17
+ _extend ( first , it ) ;
23
18
return first ;
24
19
}
Original file line number Diff line number Diff line change 1
1
export { default as Node } from './Node.js' ;
2
2
export { default as _concat } from './_concat.js' ;
3
+ export { default as _extend } from './_extend.js' ;
3
4
export { default as _iter } from './_iter.js' ;
4
5
export { default as _iter_fast } from './_iter_fast.js' ;
5
6
export { default as _last } from './_last.js' ;
You can’t perform that action at this time.
0 commit comments