diff options
| author | Lukas Wirth <lukastw97@gmail.com> | 2025-01-10 13:49:35 +0100 |
|---|---|---|
| committer | Lukas Wirth <lukastw97@gmail.com> | 2025-01-10 13:49:35 +0100 |
| commit | a006eaba7967774513023738d22a5bd372d96bbd (patch) | |
| tree | e0fc9a2a54428f42a32109357ab46a78553d8759 /src/tools/rust-analyzer/crates/syntax | |
| parent | f513b27ed592cdde590b1a99a899fa525893560c (diff) | |
| download | rust-a006eaba7967774513023738d22a5bd372d96bbd.tar.gz rust-a006eaba7967774513023738d22a5bd372d96bbd.zip | |
Re-implement rust string highlighting via tool attribute
Diffstat (limited to 'src/tools/rust-analyzer/crates/syntax')
| -rw-r--r-- | src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs b/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs index 81c7e15bcbc..56f94b965e3 100644 --- a/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs +++ b/src/tools/rust-analyzer/crates/syntax/src/ast/node_ext.rs @@ -185,6 +185,14 @@ impl ast::Attr { Some((self.simple_name()?, tt)) } + pub fn as_simple_path(&self) -> Option<ast::Path> { + let meta = self.meta()?; + if meta.eq_token().is_some() || meta.token_tree().is_some() { + return None; + } + self.path() + } + pub fn simple_name(&self) -> Option<SmolStr> { let path = self.meta()?.path()?; match (path.segment(), path.qualifier()) { |
