@@ -14853,6 +14853,7 @@ pub enum Pat {
1485314853 SlicePat(SlicePat),
1485414854 RangePat(RangePat),
1485514855 LiteralPat(LiteralPat),
14856+ MacroCall(MacroCall),
1485614857}
1485714858impl From<OrPat> for Pat {
1485814859 fn from(node: OrPat) -> Pat {
@@ -14924,6 +14925,11 @@ impl From<LiteralPat> for Pat {
1492414925 Pat::LiteralPat(node)
1492514926 }
1492614927}
14928+ impl From<MacroCall> for Pat {
14929+ fn from(node: MacroCall) -> Pat {
14930+ Pat::MacroCall(node)
14931+ }
14932+ }
1492714933impl std::fmt::Display for Pat {
1492814934 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
1492914935 match self {
@@ -14941,15 +14947,16 @@ impl std::fmt::Display for Pat {
1494114947 Pat::SlicePat(it) => std::fmt::Display::fmt(it, f),
1494214948 Pat::RangePat(it) => std::fmt::Display::fmt(it, f),
1494314949 Pat::LiteralPat(it) => std::fmt::Display::fmt(it, f),
14950+ Pat::MacroCall(it) => std::fmt::Display::fmt(it, f),
1494414951 }
1494514952 }
1494614953}
1494714954impl AstNode for Pat {
1494814955 fn can_cast(kind: SyntaxKind) -> bool {
1494914956 match kind {
14950- BIND_PAT | BOX_PAT | DOT_DOT_PAT | LITERAL_PAT | OR_PAT | PAREN_PAT | PATH_PAT
14951- | PLACEHOLDER_PAT | RANGE_PAT | RECORD_PAT | REF_PAT | SLICE_PAT | TUPLE_PAT
14952- | TUPLE_STRUCT_PAT => true,
14957+ BIND_PAT | BOX_PAT | DOT_DOT_PAT | LITERAL_PAT | MACRO_CALL | OR_PAT | PAREN_PAT
14958+ | PATH_PAT | PLACEHOLDER_PAT | RANGE_PAT | RECORD_PAT | REF_PAT | SLICE_PAT
14959+ | TUPLE_PAT | TUPLE_STRUCT_PAT => true,
1495314960 _ => false,
1495414961 }
1495514962 }
@@ -14974,6 +14981,7 @@ impl AstNode for Pat {
1497414981 SLICE_PAT => SlicePat::cast_or_return(syntax).map(|x| Pat::SlicePat(x)),
1497514982 RANGE_PAT => RangePat::cast_or_return(syntax).map(|x| Pat::RangePat(x)),
1497614983 LITERAL_PAT => LiteralPat::cast_or_return(syntax).map(|x| Pat::LiteralPat(x)),
14984+ MACRO_CALL => MacroCall::cast_or_return(syntax).map(|x| Pat::MacroCall(x)),
1497714985 _ => Err(syntax),
1497814986 }
1497914987 }
@@ -14993,6 +15001,7 @@ impl AstNode for Pat {
1499315001 Pat::SlicePat(it) => it.syntax(),
1499415002 Pat::RangePat(it) => it.syntax(),
1499515003 Pat::LiteralPat(it) => it.syntax(),
15004+ Pat::MacroCall(it) => it.syntax(),
1499615005 }
1499715006 }
1499815007 fn into_syntax(self) -> SyntaxNode {
@@ -15011,15 +15020,16 @@ impl AstNode for Pat {
1501115020 Pat::SlicePat(it) => it.into_syntax(),
1501215021 Pat::RangePat(it) => it.into_syntax(),
1501315022 Pat::LiteralPat(it) => it.into_syntax(),
15023+ Pat::MacroCall(it) => it.into_syntax(),
1501415024 }
1501515025 }
1501615026}
1501715027impl AstElement for Pat {
1501815028 fn can_cast_element(kind: SyntaxKind) -> bool {
1501915029 match kind {
15020- BIND_PAT | BOX_PAT | DOT_DOT_PAT | LITERAL_PAT | OR_PAT | PAREN_PAT | PATH_PAT
15021- | PLACEHOLDER_PAT | RANGE_PAT | RECORD_PAT | REF_PAT | SLICE_PAT | TUPLE_PAT
15022- | TUPLE_STRUCT_PAT => true,
15030+ BIND_PAT | BOX_PAT | DOT_DOT_PAT | LITERAL_PAT | MACRO_CALL | OR_PAT | PAREN_PAT
15031+ | PATH_PAT | PLACEHOLDER_PAT | RANGE_PAT | RECORD_PAT | REF_PAT | SLICE_PAT
15032+ | TUPLE_PAT | TUPLE_STRUCT_PAT => true,
1502315033 _ => false,
1502415034 }
1502515035 }
@@ -15044,6 +15054,7 @@ impl AstElement for Pat {
1504415054 SLICE_PAT => SlicePat::cast_or_return_element(syntax).map(|x| Pat::SlicePat(x)),
1504515055 RANGE_PAT => RangePat::cast_or_return_element(syntax).map(|x| Pat::RangePat(x)),
1504615056 LITERAL_PAT => LiteralPat::cast_or_return_element(syntax).map(|x| Pat::LiteralPat(x)),
15057+ MACRO_CALL => MacroCall::cast_or_return_element(syntax).map(|x| Pat::MacroCall(x)),
1504715058 _ => Err(syntax),
1504815059 }
1504915060 }
@@ -15063,6 +15074,7 @@ impl AstElement for Pat {
1506315074 Pat::SlicePat(it) => it.syntax_element(),
1506415075 Pat::RangePat(it) => it.syntax_element(),
1506515076 Pat::LiteralPat(it) => it.syntax_element(),
15077+ Pat::MacroCall(it) => it.syntax_element(),
1506615078 }
1506715079 }
1506815080 fn into_syntax_element(self) -> SyntaxElement {
@@ -15081,6 +15093,7 @@ impl AstElement for Pat {
1508115093 Pat::SlicePat(it) => it.into_syntax_element(),
1508215094 Pat::RangePat(it) => it.into_syntax_element(),
1508315095 Pat::LiteralPat(it) => it.into_syntax_element(),
15096+ Pat::MacroCall(it) => it.into_syntax_element(),
1508415097 }
1508515098 }
1508615099}
0 commit comments