@@ -195,7 +195,7 @@ impl TokenStream {
195
195
new_stream. extend_from_slice ( parts. 0 ) ;
196
196
new_stream. push ( comma) ;
197
197
new_stream. extend_from_slice ( parts. 1 ) ;
198
- return Some ( ( TokenStream :: concat ( new_stream) , sp) ) ;
198
+ return Some ( ( TokenStream :: new ( new_stream) , sp) ) ;
199
199
}
200
200
}
201
201
None
@@ -216,7 +216,7 @@ impl From<Token> for TokenStream {
216
216
217
217
impl < T : Into < TokenStream > > iter:: FromIterator < T > for TokenStream {
218
218
fn from_iter < I : IntoIterator < Item = T > > ( iter : I ) -> Self {
219
- TokenStream :: concat ( iter. into_iter ( ) . map ( Into :: into) . collect :: < Vec < _ > > ( ) )
219
+ TokenStream :: new ( iter. into_iter ( ) . map ( Into :: into) . collect :: < Vec < _ > > ( ) )
220
220
}
221
221
}
222
222
@@ -265,7 +265,7 @@ impl Extend<TokenStream> for TokenStream {
265
265
// Build the resulting token stream. If it contains more than one token,
266
266
// preserve capacity in the vector in anticipation of the caller
267
267
// performing additional calls to extend.
268
- * self = TokenStream :: concat ( builder. 0 ) ;
268
+ * self = TokenStream :: new ( builder. 0 ) ;
269
269
}
270
270
}
271
271
@@ -297,18 +297,14 @@ impl TokenStream {
297
297
}
298
298
}
299
299
300
- pub fn concat ( mut streams : Vec < TokenStream > ) -> TokenStream {
300
+ pub fn new ( mut streams : Vec < TokenStream > ) -> TokenStream {
301
301
match streams. len ( ) {
302
302
0 => TokenStream :: empty ( ) ,
303
303
1 => streams. pop ( ) . unwrap ( ) ,
304
- _ => TokenStream :: concat_rc_vec ( Lrc :: new ( streams) ) ,
304
+ _ => TokenStream :: Stream ( Lrc :: new ( streams) ) ,
305
305
}
306
306
}
307
307
308
- fn concat_rc_vec ( streams : Lrc < Vec < TokenStream > > ) -> TokenStream {
309
- TokenStream :: Stream ( streams)
310
- }
311
-
312
308
pub fn trees ( & self ) -> Cursor {
313
309
self . clone ( ) . into_trees ( )
314
310
}
@@ -389,7 +385,7 @@ impl TokenStream {
389
385
} ) ;
390
386
i += 1 ;
391
387
}
392
- TokenStream :: concat ( result)
388
+ TokenStream :: new ( result)
393
389
}
394
390
395
391
pub fn map < F : FnMut ( TokenTree ) -> TokenTree > ( self , mut f : F ) -> TokenStream {
@@ -402,7 +398,7 @@ impl TokenStream {
402
398
_ => unreachable ! ( )
403
399
} ) ;
404
400
}
405
- TokenStream :: concat ( result)
401
+ TokenStream :: new ( result)
406
402
}
407
403
408
404
fn first_tree_and_joint ( & self ) -> Option < ( TokenTree , bool ) > {
@@ -461,7 +457,7 @@ impl TokenStreamBuilder {
461
457
}
462
458
463
459
pub fn build ( self ) -> TokenStream {
464
- TokenStream :: concat ( self . 0 )
460
+ TokenStream :: new ( self . 0 )
465
461
}
466
462
467
463
fn push_all_but_last_tree ( & mut self , stream : & TokenStream ) {
@@ -470,7 +466,7 @@ impl TokenStreamBuilder {
470
466
match len {
471
467
1 => { }
472
468
2 => self . 0 . push ( streams[ 0 ] . clone ( ) . into ( ) ) ,
473
- _ => self . 0 . push ( TokenStream :: concat ( streams[ 0 .. len - 1 ] . to_vec ( ) ) ) ,
469
+ _ => self . 0 . push ( TokenStream :: new ( streams[ 0 .. len - 1 ] . to_vec ( ) ) ) ,
474
470
}
475
471
self . push_all_but_last_tree ( & streams[ len - 1 ] )
476
472
}
@@ -482,7 +478,7 @@ impl TokenStreamBuilder {
482
478
match len {
483
479
1 => { }
484
480
2 => self . 0 . push ( streams[ 1 ] . clone ( ) . into ( ) ) ,
485
- _ => self . 0 . push ( TokenStream :: concat ( streams[ 1 .. len] . to_vec ( ) ) ) ,
481
+ _ => self . 0 . push ( TokenStream :: new ( streams[ 1 .. len] . to_vec ( ) ) ) ,
486
482
}
487
483
self . push_all_but_first_tree ( & streams[ 0 ] )
488
484
}
@@ -577,7 +573,7 @@ impl Cursor {
577
573
_ if stream. is_empty ( ) => return ,
578
574
CursorKind :: Empty => * self = stream. trees ( ) ,
579
575
CursorKind :: Tree ( _, consumed) | CursorKind :: JointTree ( _, consumed) => {
580
- * self = TokenStream :: concat ( vec ! [ self . original_stream( ) , stream] ) . trees ( ) ;
576
+ * self = TokenStream :: new ( vec ! [ self . original_stream( ) , stream] ) . trees ( ) ;
581
577
if consumed {
582
578
self . next ( ) ;
583
579
}
@@ -593,10 +589,10 @@ impl Cursor {
593
589
CursorKind :: Empty => TokenStream :: empty ( ) ,
594
590
CursorKind :: Tree ( ref tree, _) => tree. clone ( ) . into ( ) ,
595
591
CursorKind :: JointTree ( ref tree, _) => tree. clone ( ) . joint ( ) ,
596
- CursorKind :: Stream ( ref cursor) => TokenStream :: concat_rc_vec ( {
592
+ CursorKind :: Stream ( ref cursor) => TokenStream :: Stream (
597
593
cursor. stack . get ( 0 ) . cloned ( ) . map ( |( stream, _) | stream)
598
594
. unwrap_or_else ( || cursor. stream . clone ( ) )
599
- } ) ,
595
+ ) ,
600
596
}
601
597
}
602
598
@@ -664,7 +660,7 @@ impl From<TokenStream> for ThinTokenStream {
664
660
665
661
impl From < ThinTokenStream > for TokenStream {
666
662
fn from ( stream : ThinTokenStream ) -> TokenStream {
667
- stream. 0 . map ( TokenStream :: concat_rc_vec ) . unwrap_or_else ( TokenStream :: empty)
663
+ stream. 0 . map ( TokenStream :: Stream ) . unwrap_or_else ( TokenStream :: empty)
668
664
}
669
665
}
670
666
@@ -763,7 +759,7 @@ mod tests {
763
759
let test_res = string_to_ts ( "foo::bar::baz" ) ;
764
760
let test_fst = string_to_ts ( "foo::bar" ) ;
765
761
let test_snd = string_to_ts ( "::baz" ) ;
766
- let eq_res = TokenStream :: concat ( vec ! [ test_fst, test_snd] ) ;
762
+ let eq_res = TokenStream :: new ( vec ! [ test_fst, test_snd] ) ;
767
763
assert_eq ! ( test_res. trees( ) . count( ) , 5 ) ;
768
764
assert_eq ! ( eq_res. trees( ) . count( ) , 5 ) ;
769
765
assert_eq ! ( test_res. eq_unspanned( & eq_res) , true ) ;
0 commit comments