@@ -53,8 +53,6 @@ pub enum AssocOp {
53
53
DotDot ,
54
54
/// `..=` range
55
55
DotDotEq ,
56
- /// `:`
57
- Colon ,
58
56
}
59
57
60
58
#[ derive( PartialEq , Debug ) ]
@@ -96,7 +94,6 @@ impl AssocOp {
96
94
token:: DotDotEq => Some ( DotDotEq ) ,
97
95
// DotDotDot is no longer supported, but we need some way to display the error
98
96
token:: DotDotDot => Some ( DotDotEq ) ,
99
- token:: Colon => Some ( Colon ) ,
100
97
// `<-` should probably be `< -`
101
98
token:: LArrow => Some ( Less ) ,
102
99
_ if t. is_keyword ( kw:: As ) => Some ( As ) ,
@@ -133,7 +130,7 @@ impl AssocOp {
133
130
pub fn precedence ( & self ) -> usize {
134
131
use AssocOp :: * ;
135
132
match * self {
136
- As | Colon => 14 ,
133
+ As => 14 ,
137
134
Multiply | Divide | Modulus => 13 ,
138
135
Add | Subtract => 12 ,
139
136
ShiftLeft | ShiftRight => 11 ,
@@ -156,7 +153,7 @@ impl AssocOp {
156
153
Assign | AssignOp ( _) => Fixity :: Right ,
157
154
As | Multiply | Divide | Modulus | Add | Subtract | ShiftLeft | ShiftRight | BitAnd
158
155
| BitXor | BitOr | Less | Greater | LessEqual | GreaterEqual | Equal | NotEqual
159
- | LAnd | LOr | Colon => Fixity :: Left ,
156
+ | LAnd | LOr => Fixity :: Left ,
160
157
DotDot | DotDotEq => Fixity :: None ,
161
158
}
162
159
}
@@ -166,8 +163,9 @@ impl AssocOp {
166
163
match * self {
167
164
Less | Greater | LessEqual | GreaterEqual | Equal | NotEqual => true ,
168
165
Assign | AssignOp ( _) | As | Multiply | Divide | Modulus | Add | Subtract
169
- | ShiftLeft | ShiftRight | BitAnd | BitXor | BitOr | LAnd | LOr | DotDot | DotDotEq
170
- | Colon => false ,
166
+ | ShiftLeft | ShiftRight | BitAnd | BitXor | BitOr | LAnd | LOr | DotDot | DotDotEq => {
167
+ false
168
+ }
171
169
}
172
170
}
173
171
@@ -177,7 +175,7 @@ impl AssocOp {
177
175
Assign | AssignOp ( _) => true ,
178
176
Less | Greater | LessEqual | GreaterEqual | Equal | NotEqual | As | Multiply
179
177
| Divide | Modulus | Add | Subtract | ShiftLeft | ShiftRight | BitAnd | BitXor
180
- | BitOr | LAnd | LOr | DotDot | DotDotEq | Colon => false ,
178
+ | BitOr | LAnd | LOr | DotDot | DotDotEq => false ,
181
179
}
182
180
}
183
181
@@ -202,7 +200,7 @@ impl AssocOp {
202
200
BitOr => Some ( BinOpKind :: BitOr ) ,
203
201
LAnd => Some ( BinOpKind :: And ) ,
204
202
LOr => Some ( BinOpKind :: Or ) ,
205
- Assign | AssignOp ( _) | As | DotDot | DotDotEq | Colon => None ,
203
+ Assign | AssignOp ( _) | As | DotDot | DotDotEq => None ,
206
204
}
207
205
}
208
206
@@ -223,10 +221,9 @@ impl AssocOp {
223
221
Greater | // `{ 42 } > 3`
224
222
GreaterEqual | // `{ 42 } >= 3`
225
223
AssignOp ( _) | // `{ 42 } +=`
226
- As | // `{ 42 } as usize`
227
224
// Equal | // `{ 42 } == { 42 }` Accepting these here would regress incorrect
228
- // NotEqual | // `{ 42 } != { 42 }` struct literals parser recovery.
229
- Colon , // `{ 42 }: usize`
225
+ // NotEqual | // `{ 42 } != { 42 } struct literals parser recovery.
226
+ As // `{ 42 } as usize`
230
227
)
231
228
}
232
229
}
@@ -254,7 +251,6 @@ pub enum ExprPrecedence {
254
251
Binary ( BinOpKind ) ,
255
252
256
253
Cast ,
257
- Type ,
258
254
259
255
Assign ,
260
256
AssignOp ,
@@ -313,7 +309,6 @@ impl ExprPrecedence {
313
309
// Binop-like expr kinds, handled by `AssocOp`.
314
310
ExprPrecedence :: Binary ( op) => AssocOp :: from_ast_binop ( op) . precedence ( ) as i8 ,
315
311
ExprPrecedence :: Cast => AssocOp :: As . precedence ( ) as i8 ,
316
- ExprPrecedence :: Type => AssocOp :: Colon . precedence ( ) as i8 ,
317
312
318
313
ExprPrecedence :: Assign |
319
314
ExprPrecedence :: AssignOp => AssocOp :: Assign . precedence ( ) as i8 ,
0 commit comments