aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/src/ast/generated.rs.tera
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_syntax/src/ast/generated.rs.tera')
-rw-r--r--crates/ra_syntax/src/ast/generated.rs.tera9
1 files changed, 9 insertions, 0 deletions
diff --git a/crates/ra_syntax/src/ast/generated.rs.tera b/crates/ra_syntax/src/ast/generated.rs.tera
index ca7a28581..e2d4856cf 100644
--- a/crates/ra_syntax/src/ast/generated.rs.tera
+++ b/crates/ra_syntax/src/ast/generated.rs.tera
@@ -38,6 +38,15 @@ pub enum {{ node }}Kind<'a> {
38{%- endfor %} 38{%- endfor %}
39} 39}
40 40
41{%- for kind in methods.enum %}
42impl<'a> From<&'a {{ kind }}> for &'a {{ node }} {
43 fn from(n: &'a {{ kind }}) -> &'a {{ node }} {
44 {{ node }}::cast(&n.syntax).unwrap()
45 }
46}
47{%- endfor %}
48
49
41impl AstNode for {{ node }} { 50impl AstNode for {{ node }} {
42 fn cast(syntax: &SyntaxNode) -> Option<&Self> { 51 fn cast(syntax: &SyntaxNode) -> Option<&Self> {
43 match syntax.kind() { 52 match syntax.kind() {