@@ -117,7 +117,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
117117
118118 if !self . replace_ranges . is_empty ( ) {
119119 let mut tokens: Vec < _ > = tokens. collect ( ) ;
120- let mut replace_ranges = self . replace_ranges . clone ( ) ;
120+ let mut replace_ranges = self . replace_ranges . to_vec ( ) ;
121121 replace_ranges. sort_by_key ( |( range, _) | range. start ) ;
122122
123123 #[ cfg( debug_assertions) ]
@@ -147,7 +147,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
147147 // start position, we ensure that any replace range which encloses
148148 // another replace range will capture the *replaced* tokens for the inner
149149 // range, not the original tokens.
150- for ( range, new_tokens) in replace_ranges. iter ( ) . rev ( ) {
150+ for ( range, new_tokens) in replace_ranges. into_iter ( ) . rev ( ) {
151151 assert ! ( !range. is_empty( ) , "Cannot replace an empty range: {:?}" , range) ;
152152 // Replace ranges are only allowed to decrease the number of tokens.
153153 assert ! (
@@ -166,7 +166,7 @@ impl CreateTokenStream for LazyTokenStreamImpl {
166166
167167 tokens. splice (
168168 ( range. start as usize ) ..( range. end as usize ) ,
169- new_tokens. clone ( ) . into_iter ( ) . chain ( filler) ,
169+ new_tokens. into_iter ( ) . chain ( filler) ,
170170 ) ;
171171 }
172172 make_token_stream ( tokens. into_iter ( ) , self . break_last_token )
@@ -322,7 +322,7 @@ impl<'a> Parser<'a> {
322322 self . capture_state . replace_ranges [ replace_ranges_start..replace_ranges_end]
323323 . iter ( )
324324 . cloned ( )
325- . chain ( inner_attr_replace_ranges. clone ( ) . into_iter ( ) )
325+ . chain ( inner_attr_replace_ranges. iter ( ) . cloned ( ) )
326326 . map ( |( range, tokens) | {
327327 ( ( range. start - start_calls) ..( range. end - start_calls) , tokens)
328328 } )
0 commit comments