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 11import  Node  from  './Node.js' ; 
2- import  _push  from  './_push .js' ; 
2+ import  _extend  from  './_extend .js' ; 
33
44/** 
55 * Creates a list from an input iterable. 
@@ -14,11 +14,6 @@ export default function from(iterable) {
1414	if  ( event . done )  return  null ; 
1515
1616	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 ) ; 
2318	return  first ; 
2419} 
Original file line number Diff line number Diff line change 11export  { default  as  Node }  from  './Node.js' ; 
22export  { default  as  _concat }  from  './_concat.js' ; 
3+ export  { default  as  _extend }  from  './_extend.js' ; 
34export  { default  as  _iter }  from  './_iter.js' ; 
45export  { default  as  _iter_fast }  from  './_iter_fast.js' ; 
56export  { default  as  _last }  from  './_last.js' ; 
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments