Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/syntax/src/ast/token_ext.rs')
-rw-r--r--crates/syntax/src/ast/token_ext.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/crates/syntax/src/ast/token_ext.rs b/crates/syntax/src/ast/token_ext.rs
index 7cd1f1550b..c93391a979 100644
--- a/crates/syntax/src/ast/token_ext.rs
+++ b/crates/syntax/src/ast/token_ext.rs
@@ -204,6 +204,16 @@ pub trait IsString: AstToken {
assert!(TextRange::up_to(contents_range.len()).contains_range(range));
Some(range + contents_range.start())
}
+ fn raw_delimiter_count(&self) -> Option<u8> {
+ let text = self.text();
+ let quote_range = self.text_range_between_quotes()?;
+ let range_start = self.syntax().text_range().start();
+ text[TextRange::up_to((quote_range - range_start).start())]
+ .matches('#')
+ .count()
+ .try_into()
+ .ok()
+ }
}
impl IsString for ast::String {