@@ -19,33 +19,45 @@ use crate::T;
19
19
pub ( crate ) fn object_type_definition ( p : & mut Parser ) {
20
20
let _g = p. start_node ( SyntaxKind :: OBJECT_TYPE_DEFINITION ) ;
21
21
22
- if let Some ( TokenKind :: StringValue ) = p. peek ( ) {
23
- description:: description ( p) ;
22
+ if let Some ( token) = p. peek_token ( ) {
23
+ if token. kind ( ) == TokenKind :: StringValue {
24
+ description:: description ( p) ;
25
+ }
24
26
}
25
27
26
- if let Some ( "type" ) = p. peek_data ( ) {
27
- p. bump ( SyntaxKind :: type_KW) ;
28
+ if let Some ( token) = p. peek_token ( ) {
29
+ if token. data ( ) == "type" {
30
+ p. bump ( SyntaxKind :: type_KW) ;
31
+ }
28
32
}
29
33
30
- match p. peek ( ) {
31
- Some ( TokenKind :: Name ) => name:: name ( p) ,
32
- _ => p. err ( "expected a name" ) ,
34
+ if let Some ( token) = p. peek_token ( ) {
35
+ match token. kind ( ) {
36
+ TokenKind :: Name => name:: name ( p) ,
37
+ _ => p. err ( "expected a name" ) ,
38
+ }
33
39
}
34
40
35
- if let Some ( TokenKind :: Name ) = p. peek ( ) {
36
- if p. peek_data ( ) . unwrap ( ) == "implements" {
37
- implements_interfaces ( p) ;
38
- } else {
39
- p. err ( "unexpected Name" ) ;
41
+ if let Some ( token) = p. peek_token ( ) {
42
+ if token. kind ( ) == TokenKind :: Name {
43
+ if token. data ( ) == "implements" {
44
+ implements_interfaces ( p) ;
45
+ } else {
46
+ p. err ( "unexpected Name" ) ;
47
+ }
40
48
}
41
49
}
42
50
43
- if let Some ( T ! [ @] ) = p. peek ( ) {
44
- directive:: directives ( p, Constness :: Const ) ;
51
+ if let Some ( token) = p. peek_token ( ) {
52
+ if token. kind ( ) == T ! [ @] {
53
+ directive:: directives ( p, Constness :: Const ) ;
54
+ }
45
55
}
46
56
47
- if let Some ( T ! [ '{' ] ) = p. peek ( ) {
48
- field:: fields_definition ( p) ;
57
+ if let Some ( token) = p. peek_token ( ) {
58
+ if token. kind ( ) == T ! [ '{' ] {
59
+ field:: fields_definition ( p) ;
60
+ }
49
61
}
50
62
}
51
63
@@ -64,24 +76,32 @@ pub(crate) fn object_type_extension(p: &mut Parser) {
64
76
// FieldsDefinitions is provided. If none are present, we push an error.
65
77
let mut meets_requirements = false ;
66
78
67
- match p. peek ( ) {
68
- Some ( TokenKind :: Name ) => name:: name ( p) ,
69
- _ => p. err ( "expected a Name" ) ,
79
+ if let Some ( token) = p. peek_token ( ) {
80
+ match token. kind ( ) {
81
+ TokenKind :: Name => name:: name ( p) ,
82
+ _ => p. err ( "expected a Name" ) ,
83
+ }
70
84
}
71
85
72
- if let Some ( "implements" ) = p. peek_data ( ) {
73
- meets_requirements = true ;
74
- implements_interfaces ( p) ;
86
+ if let Some ( token) = p. peek_token ( ) {
87
+ if token. data ( ) == "implements" {
88
+ meets_requirements = true ;
89
+ implements_interfaces ( p) ;
90
+ }
75
91
}
76
92
77
- if let Some ( T ! [ @] ) = p. peek ( ) {
78
- meets_requirements = true ;
79
- directive:: directives ( p, Constness :: Const )
93
+ if let Some ( token) = p. peek_token ( ) {
94
+ if token. kind ( ) == T ! [ @] {
95
+ meets_requirements = true ;
96
+ directive:: directives ( p, Constness :: Const ) ;
97
+ }
80
98
}
81
99
82
- if let Some ( T ! [ '{' ] ) = p. peek ( ) {
83
- meets_requirements = true ;
84
- field:: fields_definition ( p)
100
+ if let Some ( token) = p. peek_token ( ) {
101
+ if token. kind ( ) == T ! [ '{' ] {
102
+ meets_requirements = true ;
103
+ field:: fields_definition ( p) ;
104
+ }
85
105
}
86
106
87
107
if !meets_requirements {
@@ -99,10 +119,12 @@ pub(crate) fn implements_interfaces(p: &mut Parser) {
99
119
p. bump ( SyntaxKind :: implements_KW) ;
100
120
101
121
p. parse_separated_list ( T ! [ & ] , S ! [ & ] , |p| {
102
- if let Some ( TokenKind :: Name ) = p. peek ( ) {
103
- ty:: named_type ( p) ;
104
- } else {
105
- p. err ( "expected an Interface name" ) ;
122
+ if let Some ( token) = p. peek_token ( ) {
123
+ if token. kind ( ) == TokenKind :: Name {
124
+ ty:: named_type ( p) ;
125
+ } else {
126
+ p. err ( "expected an Interface name" ) ;
127
+ }
106
128
}
107
129
} ) ;
108
130
}
0 commit comments