@@ -25,7 +25,7 @@ use rustc_span::{DUMMY_SP, Span, SpanDecoder, SpanEncoder, Symbol, sym};
2525
2626use crate :: ast:: AttrStyle ;
2727use crate :: ast_traits:: { HasAttrs , HasTokens } ;
28- use crate :: token:: { self , Delimiter , InvisibleOrigin , Token , TokenKind } ;
28+ use crate :: token:: { self , Delimiter , Token , TokenKind } ;
2929use crate :: { AttrVec , Attribute } ;
3030
3131/// Part of a `TokenStream`.
@@ -471,48 +471,6 @@ impl TokenStream {
471471 TokenStream :: new ( tts)
472472 }
473473
474- fn flatten_token ( token : & Token , spacing : Spacing ) -> TokenTree {
475- match token. kind {
476- token:: NtIdent ( ident, is_raw) => {
477- TokenTree :: Token ( Token :: new ( token:: Ident ( ident. name , is_raw) , ident. span ) , spacing)
478- }
479- token:: NtLifetime ( ident, is_raw) => TokenTree :: Delimited (
480- DelimSpan :: from_single ( token. span ) ,
481- DelimSpacing :: new ( Spacing :: JointHidden , spacing) ,
482- Delimiter :: Invisible ( InvisibleOrigin :: FlattenToken ) ,
483- TokenStream :: token_alone ( token:: Lifetime ( ident. name , is_raw) , ident. span ) ,
484- ) ,
485- _ => TokenTree :: Token ( * token, spacing) ,
486- }
487- }
488-
489- fn flatten_token_tree ( tree : & TokenTree ) -> TokenTree {
490- match tree {
491- TokenTree :: Token ( token, spacing) => TokenStream :: flatten_token ( token, * spacing) ,
492- TokenTree :: Delimited ( span, spacing, delim, tts) => {
493- TokenTree :: Delimited ( * span, * spacing, * delim, tts. flattened ( ) )
494- }
495- }
496- }
497-
498- #[ must_use]
499- pub fn flattened ( & self ) -> TokenStream {
500- fn can_skip ( stream : & TokenStream ) -> bool {
501- stream. iter ( ) . all ( |tree| match tree {
502- TokenTree :: Token ( token, _) => {
503- !matches ! ( token. kind, token:: NtIdent ( ..) | token:: NtLifetime ( ..) )
504- }
505- TokenTree :: Delimited ( .., inner) => can_skip ( inner) ,
506- } )
507- }
508-
509- if can_skip ( self ) {
510- return self . clone ( ) ;
511- }
512-
513- self . iter ( ) . map ( |tree| TokenStream :: flatten_token_tree ( tree) ) . collect ( )
514- }
515-
516474 // If `vec` is not empty, try to glue `tt` onto its last token. The return
517475 // value indicates if gluing took place.
518476 fn try_glue_to_last ( vec : & mut Vec < TokenTree > , tt : & TokenTree ) -> bool {
0 commit comments