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.rs13
1 files changed, 3 insertions, 10 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 0bce67fcd9..5f7c0a5202 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
@@ -14,7 +14,7 @@ use proc_macro::bridge::server;
use span::{FIXUP_ERASED_FILE_AST_ID_MARKER, Span, TextRange, TextSize};
use crate::{
- SubCallback, SubRequest, SubResponse,
+ ProcMacroClientHandle,
bridge::{Diagnostic, ExpnGlobals, Literal, TokenTree},
server_impl::literal_from_str,
};
@@ -29,7 +29,7 @@ pub struct RaSpanServer {
pub call_site: Span,
pub def_site: Span,
pub mixed_site: Span,
- pub callback: Option<SubCallback>,
+ pub callback: Option<ProcMacroClientHandle>,
}
impl server::Types for RaSpanServer {
@@ -156,14 +156,7 @@ impl server::Span for RaSpanServer {
let start: u32 = span.range.start().into();
let end: u32 = span.range.end().into();
- let req = SubRequest::SourceText { file_id, start, end };
-
- let cb = self.callback.as_mut()?;
- let response = cb(req);
-
- match response {
- SubResponse::SourceTextResult { text } => text,
- }
+ self.callback.as_ref()?.source_text(file_id.file_id().index(), start, end)
}
fn parent(&mut self, _span: Self::Span) -> Option<Self::Span> {