@@ -290,12 +290,12 @@ impl MetaItem {
290
290
I : Iterator < Item = & ' a TokenTree > ,
291
291
{
292
292
// FIXME: Share code with `parse_path`.
293
- let path = match tokens. next ( ) . map ( |tt| TokenTree :: uninterpolate ( tt. clone ( ) ) ) {
294
- Some ( TokenTree :: Token (
295
- Token { kind : kind @ ( token:: Ident ( ..) | token:: ModSep ) , span } ,
293
+ let path = match tokens. next ( ) . map ( |tt| TokenTree :: uninterpolate ( tt) ) . as_deref ( ) {
294
+ Some ( & TokenTree :: Token (
295
+ Token { kind : ref kind @ ( token:: Ident ( ..) | token:: ModSep ) , span } ,
296
296
_,
297
297
) ) => ' arm: {
298
- let mut segments = if let token:: Ident ( name, _) = kind {
298
+ let mut segments = if let & token:: Ident ( name, _) = kind {
299
299
if let Some ( TokenTree :: Token ( Token { kind : token:: ModSep , .. } , _) ) =
300
300
tokens. peek ( )
301
301
{
@@ -308,8 +308,8 @@ impl MetaItem {
308
308
thin_vec ! [ PathSegment :: path_root( span) ]
309
309
} ;
310
310
loop {
311
- if let Some ( TokenTree :: Token ( Token { kind : token:: Ident ( name, _) , span } , _) ) =
312
- tokens. next ( ) . map ( |tt| TokenTree :: uninterpolate ( tt. clone ( ) ) )
311
+ if let Some ( & TokenTree :: Token ( Token { kind : token:: Ident ( name, _) , span } , _) ) =
312
+ tokens. next ( ) . map ( |tt| TokenTree :: uninterpolate ( tt) ) . as_deref ( )
313
313
{
314
314
segments. push ( PathSegment :: from_ident ( Ident :: new ( name, span) ) ) ;
315
315
} else {
@@ -326,7 +326,7 @@ impl MetaItem {
326
326
let span = span. with_hi ( segments. last ( ) . unwrap ( ) . ident . span . hi ( ) ) ;
327
327
Path { span, segments, tokens : None }
328
328
}
329
- Some ( TokenTree :: Token ( Token { kind : token:: Interpolated ( nt) , .. } , _) ) => match & * nt {
329
+ Some ( TokenTree :: Token ( Token { kind : token:: Interpolated ( nt) , .. } , _) ) => match & * * nt {
330
330
token:: Nonterminal :: NtMeta ( item) => return item. meta ( item. path . span ) ,
331
331
token:: Nonterminal :: NtPath ( path) => ( * * path) . clone ( ) ,
332
332
_ => return None ,
0 commit comments