@@ -116,7 +116,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
116116
117117 if !self . replace_ranges . is_empty ( ) {
118118 let mut tokens: Vec < _ > = tokens. collect ( ) ;
119- let mut replace_ranges = self . replace_ranges . clone ( ) ;
119+ let mut replace_ranges = self . replace_ranges . to_vec ( ) ;
120120 replace_ranges. sort_by_key ( |( range, _) | range. start ) ;
121121
122122 #[ cfg( debug_assertions) ]
@@ -146,7 +146,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
146146 // start position, we ensure that any replace range which encloses
147147 // another replace range will capture the *replaced* tokens for the inner
148148 // range, not the original tokens.
149- for ( range, new_tokens) in replace_ranges. iter ( ) . rev ( ) {
149+ for ( range, new_tokens) in replace_ranges. into_iter ( ) . rev ( ) {
150150 assert ! ( !range. is_empty( ) , "Cannot replace an empty range: {:?}" , range) ;
151151 // Replace ranges are only allowed to decrease the number of tokens.
152152 assert ! (
@@ -165,7 +165,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
165165
166166 tokens. splice (
167167 ( range. start as usize ) ..( range. end as usize ) ,
168- new_tokens. clone ( ) . into_iter ( ) . chain ( filler) ,
168+ new_tokens. into_iter ( ) . chain ( filler) ,
169169 ) ;
170170 }
171171 make_token_stream ( tokens. into_iter ( ) , self . break_last_token )
@@ -321,7 +321,7 @@ impl<'a> Parser<'a> {
321321 self . capture_state . replace_ranges [ replace_ranges_start..replace_ranges_end]
322322 . iter ( )
323323 . cloned ( )
324- . chain ( inner_attr_replace_ranges. clone ( ) . into_iter ( ) )
324+ . chain ( inner_attr_replace_ranges. iter ( ) . cloned ( ) )
325325 . map ( |( range, tokens) | {
326326 ( ( range. start - start_calls) ..( range. end - start_calls) , tokens)
327327 } )
0 commit comments