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