diff options
| author | Martin Haug <mhaug@live.de> | 2021-10-31 11:46:12 +0100 |
|---|---|---|
| committer | Martin Haug <mhaug@live.de> | 2021-11-05 13:44:49 +0100 |
| commit | 84d35efee38d137a77e368c50421ac24327371c6 (patch) | |
| tree | c2fa9f669743d35cbb79892770427dd843202894 /src/syntax/ident.rs | |
| parent | 4875633acf4701705b9b3b014eb7d94268b897c2 (diff) | |
Less owning, more iterating
Diffstat (limited to 'src/syntax/ident.rs')
| -rw-r--r-- | src/syntax/ident.rs | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/syntax/ident.rs b/src/syntax/ident.rs index 2c61329d..f5cc6330 100644 --- a/src/syntax/ident.rs +++ b/src/syntax/ident.rs @@ -3,7 +3,7 @@ use std::ops::Deref; use unicode_xid::UnicodeXID; -use super::{NodeKind, RedTicket, Span, TypedNode}; +use super::{NodeKind, RedRef, Span, TypedNode}; use crate::util::EcoString; /// An unicode identifier with a few extra permissible characters. @@ -67,11 +67,10 @@ impl From<&Ident> for EcoString { } impl TypedNode for Ident { - fn cast_from(node: RedTicket) -> Option<Self> { - if let NodeKind::Ident(i) = node.kind() { - Some(Ident::new(i, node.own().span()).unwrap()) - } else { - None + fn cast_from(node: RedRef) -> Option<Self> { + match node.kind() { + NodeKind::Ident(i) => Some(Ident::new(i, node.span()).unwrap()), + _ => None, } } } |
