Item,
Block,
Stmt,
- Pat2018 {
- /// Keep track of whether the user used `:pat2018` or `:pat` and we inferred it from the
- /// edition of the span. This is used for diagnostics.
- inferred: bool,
- },
- Pat2021 {
- /// Keep track of whether the user used `:pat2018` or `:pat` and we inferred it from the
+ PatParam {
+ /// Keep track of whether the user used `:pat_param` or `:pat` and we inferred it from the
/// edition of the span. This is used for diagnostics.
inferred: bool,
},
+ PatWithOr,
Expr,
Ty,
Ident,
sym::stmt => NonterminalKind::Stmt,
sym::pat => match edition() {
Edition::Edition2015 | Edition::Edition2018 => {
- NonterminalKind::Pat2018 { inferred: true }
+ NonterminalKind::PatParam { inferred: true }
}
- Edition::Edition2021 => NonterminalKind::Pat2021 { inferred: true },
+ Edition::Edition2021 => NonterminalKind::PatWithOr,
},
- sym::pat2018 => NonterminalKind::Pat2018 { inferred: false },
- sym::pat2021 => NonterminalKind::Pat2021 { inferred: false },
+ sym::pat_param => NonterminalKind::PatParam { inferred: false },
sym::expr => NonterminalKind::Expr,
sym::ty => NonterminalKind::Ty,
sym::ident => NonterminalKind::Ident,
NonterminalKind::Item => sym::item,
NonterminalKind::Block => sym::block,
NonterminalKind::Stmt => sym::stmt,
- NonterminalKind::Pat2018 { inferred: false } => sym::pat2018,
- NonterminalKind::Pat2021 { inferred: false } => sym::pat2021,
- NonterminalKind::Pat2018 { inferred: true }
- | NonterminalKind::Pat2021 { inferred: true } => sym::pat,
+ NonterminalKind::PatParam { inferred: false } => sym::pat_param,
+ NonterminalKind::PatParam { inferred: true } | NonterminalKind::PatWithOr => sym::pat,
NonterminalKind::Expr => sym::expr,
NonterminalKind::Ty => sym::ty,
NonterminalKind::Ident => sym::ident,