@@ -83,18 +83,6 @@ macro_rules! maybe_recover_from_interpolated_ty_qpath {
83
83
} ;
84
84
}
85
85
86
- #[ derive( Debug , Clone , Copy , PartialEq ) ]
87
- enum PrevTokenKind {
88
- DocComment ,
89
- Comma ,
90
- Plus ,
91
- Interpolated ,
92
- Eof ,
93
- Ident ,
94
- BitOr ,
95
- Other ,
96
- }
97
-
98
86
#[ derive( Clone ) ]
99
87
pub struct Parser < ' a > {
100
88
pub sess : & ' a ParseSess ,
@@ -115,9 +103,6 @@ pub struct Parser<'a> {
115
103
/// Preferable use is through the `unnormalized_prev_token()` getter.
116
104
/// Use span from this token if you need to concatenate it with some neighbouring spans.
117
105
unnormalized_prev_token : Option < Token > ,
118
- /// Equivalent to `prev_token.kind` in simplified form.
119
- /// FIXME: Remove in favor of `(unnormalized_)prev_token().kind`.
120
- prev_token_kind : PrevTokenKind ,
121
106
/// Equivalent to `unnormalized_prev_token().span`.
122
107
/// FIXME: Remove in favor of `(unnormalized_)prev_token().span`.
123
108
pub prev_span : Span ,
@@ -396,7 +381,6 @@ impl<'a> Parser<'a> {
396
381
unnormalized_token : None ,
397
382
prev_token : Token :: dummy ( ) ,
398
383
unnormalized_prev_token : None ,
399
- prev_token_kind : PrevTokenKind :: Other ,
400
384
prev_span : DUMMY_SP ,
401
385
restrictions : Restrictions :: empty ( ) ,
402
386
recurse_into_file_modules,
@@ -523,10 +507,11 @@ impl<'a> Parser<'a> {
523
507
self . bump ( ) ;
524
508
Ok ( Ident :: new ( name, span) )
525
509
}
526
- _ => Err ( if self . prev_token_kind == PrevTokenKind :: DocComment {
527
- self . span_fatal_err ( self . prev_span , Error :: UselessDocComment )
528
- } else {
529
- self . expected_ident_found ( )
510
+ _ => Err ( match self . prev_token . kind {
511
+ TokenKind :: DocComment ( ..) => {
512
+ self . span_fatal_err ( self . prev_span , Error :: UselessDocComment )
513
+ }
514
+ _ => self . expected_ident_found ( ) ,
530
515
} ) ,
531
516
}
532
517
}
@@ -908,7 +893,7 @@ impl<'a> Parser<'a> {
908
893
909
894
/// Advance the parser by one token.
910
895
pub fn bump ( & mut self ) {
911
- if self . prev_token_kind == PrevTokenKind :: Eof {
896
+ if self . prev_token . kind == TokenKind :: Eof {
912
897
// Bumping after EOF is a bad sign, usually an infinite loop.
913
898
let msg = "attempted to bump the parser past EOF (may be stuck in a loop)" ;
914
899
self . span_bug ( self . token . span , msg) ;
@@ -920,16 +905,6 @@ impl<'a> Parser<'a> {
920
905
self . unnormalized_prev_token = self . unnormalized_token . take ( ) ;
921
906
922
907
// Update fields derived from the previous token.
923
- self . prev_token_kind = match self . prev_token . kind {
924
- token:: DocComment ( ..) => PrevTokenKind :: DocComment ,
925
- token:: Comma => PrevTokenKind :: Comma ,
926
- token:: BinOp ( token:: Plus ) => PrevTokenKind :: Plus ,
927
- token:: BinOp ( token:: Or ) => PrevTokenKind :: BitOr ,
928
- token:: Interpolated ( ..) => PrevTokenKind :: Interpolated ,
929
- token:: Eof => PrevTokenKind :: Eof ,
930
- token:: Ident ( ..) => PrevTokenKind :: Ident ,
931
- _ => PrevTokenKind :: Other ,
932
- } ;
933
908
self . prev_span = self . unnormalized_prev_token ( ) . span ;
934
909
935
910
self . expected_tokens . clear ( ) ;
@@ -949,7 +924,6 @@ impl<'a> Parser<'a> {
949
924
self . unnormalized_prev_token = self . unnormalized_token . take ( ) ;
950
925
951
926
// Update fields derived from the previous token.
952
- self . prev_token_kind = PrevTokenKind :: Other ;
953
927
self . prev_span = self . unnormalized_prev_token ( ) . span . with_hi ( span. lo ( ) ) ;
954
928
955
929
self . expected_tokens . clear ( ) ;
0 commit comments