Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs')
-rw-r--r--crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs b/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs
index 3a25391b57..9946608247 100644
--- a/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs
+++ b/crates/proc-macro-srv/src/server_impl/rust_analyzer_span.rs
@@ -162,7 +162,10 @@ impl server::Span for RaSpanServer<'_> {
span
}
fn byte_range(&mut self, span: Self::Span) -> Range<usize> {
- // FIXME requires db to resolve the ast id, THIS IS NOT INCREMENTAL
+ if let Some(cb) = self.callback.as_mut() {
+ return cb.byte_range(span);
+ }
+
Range { start: span.range.start().into(), end: span.range.end().into() }
}
fn join(&mut self, first: Self::Span, second: Self::Span) -> Option<Self::Span> {