pub enum Scrutinee {
CatchAll {
span: Span,
},
Literal {
value: Literal,
span: Span,
},
Variable {
name: Ident,
span: Span,
},
StructScrutinee {
struct_name: Ident,
fields: Vec<StructScrutineeField>,
span: Span,
},
EnumScrutinee {
call_path: CallPath,
value: Box<Scrutinee>,
span: Span,
},
Tuple {
elems: Vec<Scrutinee>,
span: Span,
},
Error {
spans: Box<[Span]>,
},
}
Expand description
A Scrutinee is on the left-hand-side of a pattern, and dictates whether or not a pattern will succeed at pattern matching and what, if any, elements will need to be implemented in a desugared if expression.