11use rustc_ast:: token:: { self , Delimiter , IdentIsRaw , Lit , Token , TokenKind } ;
2- use rustc_ast:: tokenstream:: { RefTokenTreeCursor , TokenStream , TokenTree } ;
2+ use rustc_ast:: tokenstream:: { TokenStream , TokenStreamIter , TokenTree } ;
33use rustc_ast:: { LitIntType , LitKind } ;
44use rustc_ast_pretty:: pprust;
55use rustc_errors:: { Applicability , PResult } ;
@@ -39,14 +39,14 @@ impl MetaVarExpr {
3939 outer_span : Span ,
4040 psess : & ' psess ParseSess ,
4141 ) -> PResult < ' psess , MetaVarExpr > {
42- let mut tts = input. trees ( ) ;
43- let ident = parse_ident ( & mut tts , psess, outer_span) ?;
44- let Some ( TokenTree :: Delimited ( .., Delimiter :: Parenthesis , args) ) = tts . next ( ) else {
42+ let mut iter = input. iter ( ) ;
43+ let ident = parse_ident ( & mut iter , psess, outer_span) ?;
44+ let Some ( TokenTree :: Delimited ( .., Delimiter :: Parenthesis , args) ) = iter . next ( ) else {
4545 let msg = "meta-variable expression parameter must be wrapped in parentheses" ;
4646 return Err ( psess. dcx ( ) . struct_span_err ( ident. span , msg) ) ;
4747 } ;
48- check_trailing_token ( & mut tts , psess) ?;
49- let mut iter = args. trees ( ) ;
48+ check_trailing_token ( & mut iter , psess) ?;
49+ let mut iter = args. iter ( ) ;
5050 let rslt = match ident. as_str ( ) {
5151 "concat" => {
5252 let mut result = Vec :: new ( ) ;
@@ -143,7 +143,7 @@ pub(crate) enum MetaVarExprConcatElem {
143143
144144// Checks if there are any remaining tokens. For example, `${ignore(ident ... a b c ...)}`
145145fn check_trailing_token < ' psess > (
146- iter : & mut RefTokenTreeCursor < ' _ > ,
146+ iter : & mut TokenStreamIter < ' _ > ,
147147 psess : & ' psess ParseSess ,
148148) -> PResult < ' psess , ( ) > {
149149 if let Some ( tt) = iter. next ( ) {
@@ -159,7 +159,7 @@ fn check_trailing_token<'psess>(
159159
160160/// Parse a meta-variable `count` expression: `count(ident[, depth])`
161161fn parse_count < ' psess > (
162- iter : & mut RefTokenTreeCursor < ' _ > ,
162+ iter : & mut TokenStreamIter < ' _ > ,
163163 psess : & ' psess ParseSess ,
164164 span : Span ,
165165) -> PResult < ' psess , MetaVarExpr > {
@@ -181,7 +181,7 @@ fn parse_count<'psess>(
181181
182182/// Parses the depth used by index(depth) and len(depth).
183183fn parse_depth < ' psess > (
184- iter : & mut RefTokenTreeCursor < ' _ > ,
184+ iter : & mut TokenStreamIter < ' _ > ,
185185 psess : & ' psess ParseSess ,
186186 span : Span ,
187187) -> PResult < ' psess , usize > {
@@ -204,7 +204,7 @@ fn parse_depth<'psess>(
204204
205205/// Parses an generic ident
206206fn parse_ident < ' psess > (
207- iter : & mut RefTokenTreeCursor < ' _ > ,
207+ iter : & mut TokenStreamIter < ' _ > ,
208208 psess : & ' psess ParseSess ,
209209 fallback_span : Span ,
210210) -> PResult < ' psess , Ident > {
@@ -236,7 +236,7 @@ fn parse_ident_from_token<'psess>(
236236}
237237
238238fn parse_token < ' psess , ' t > (
239- iter : & mut RefTokenTreeCursor < ' t > ,
239+ iter : & mut TokenStreamIter < ' t > ,
240240 psess : & ' psess ParseSess ,
241241 fallback_span : Span ,
242242) -> PResult < ' psess , & ' t Token > {
@@ -251,7 +251,7 @@ fn parse_token<'psess, 't>(
251251
252252/// Tries to move the iterator forward returning `true` if there is a comma. If not, then the
253253/// iterator is not modified and the result is `false`.
254- fn try_eat_comma ( iter : & mut RefTokenTreeCursor < ' _ > ) -> bool {
254+ fn try_eat_comma ( iter : & mut TokenStreamIter < ' _ > ) -> bool {
255255 if let Some ( TokenTree :: Token ( Token { kind : token:: Comma , .. } , _) ) = iter. peek ( ) {
256256 let _ = iter. next ( ) ;
257257 return true ;
@@ -261,7 +261,7 @@ fn try_eat_comma(iter: &mut RefTokenTreeCursor<'_>) -> bool {
261261
262262/// Tries to move the iterator forward returning `true` if there is a dollar sign. If not, then the
263263/// iterator is not modified and the result is `false`.
264- fn try_eat_dollar ( iter : & mut RefTokenTreeCursor < ' _ > ) -> bool {
264+ fn try_eat_dollar ( iter : & mut TokenStreamIter < ' _ > ) -> bool {
265265 if let Some ( TokenTree :: Token ( Token { kind : token:: Dollar , .. } , _) ) = iter. peek ( ) {
266266 let _ = iter. next ( ) ;
267267 return true ;
@@ -271,7 +271,7 @@ fn try_eat_dollar(iter: &mut RefTokenTreeCursor<'_>) -> bool {
271271
272272/// Expects that the next item is a dollar sign.
273273fn eat_dollar < ' psess > (
274- iter : & mut RefTokenTreeCursor < ' _ > ,
274+ iter : & mut TokenStreamIter < ' _ > ,
275275 psess : & ' psess ParseSess ,
276276 span : Span ,
277277) -> PResult < ' psess , ( ) > {
0 commit comments