This commit is contained in:
Lukas Wirth 2021-09-21 15:56:06 +02:00
parent 6d6e0b8f21
commit b36f12dba5
4 changed files with 112 additions and 184 deletions

View file

@ -250,13 +250,11 @@ fn generate_nodes(kinds: KindsSrc<'_>, grammar: &AstSrc) -> String {
}
}
fn cast(syntax: SyntaxNode) -> Option<Self> {
let res = match syntax.kind() {
#(
#kinds => #name { syntax },
)*
_ => return None,
};
Some(res)
match syntax.kind() {
#(#kinds)|* => Some(#name { syntax }),
_ => None,
}
}
fn syntax(&self) -> &SyntaxNode {
&self.syntax