updated capabilities

This commit is contained in:
2026-05-24 16:19:51 +02:00
parent 354965b425
commit 5a6adbc5e4
2 changed files with 15 additions and 5 deletions
+11 -3
View File
@@ -102,11 +102,19 @@ impl LanguageServer for Backend {
res.capabilities.completion_provider = Some(CompletionOptions { res.capabilities.completion_provider = Some(CompletionOptions {
resolve_provider: Some(true), resolve_provider: Some(true),
trigger_characters: Some(vec![".".to_string()]), trigger_characters: Some(vec![
":".to_owned(),
".".to_owned(),
"'".to_owned(),
"(".to_owned(),
]),
all_commit_characters: None,
completion_item: Some(CompletionOptionsCompletionItem { completion_item: Some(CompletionOptionsCompletionItem {
label_details_support: Some(true), label_details_support: None,
}), }),
..Default::default() work_done_progress_options: WorkDoneProgressOptions {
work_done_progress: None,
},
}); });
res.capabilities.definition_provider = Some(OneOf::Left(true)); res.capabilities.definition_provider = Some(OneOf::Left(true));
+4 -2
View File
@@ -175,13 +175,15 @@ impl RustAnalyzer {
let value = rx.await?; let value = rx.await?;
let envelope: JsonRpcResponse<R::Result> = serde_json::from_value(value)?; let envelope: JsonRpcResponse<R::Result> = serde_json::from_value(value.clone())?;
if let Some(err) = envelope.error { if let Some(err) = envelope.error {
return Err(format!("LSP Error ({}): {}", err.code, err.message).into()); return Err(format!("LSP Error ({}): {}", err.code, err.message).into());
} }
envelope.result.ok_or_else(|| "missing result".into()) envelope
.result
.ok_or_else(|| format!("missing result: {:?}", value).into())
} }
pub async fn notify<T: Serialize>(&mut self, method: &str, req: T) -> std::io::Result<()> { pub async fn notify<T: Serialize>(&mut self, method: &str, req: T) -> std::io::Result<()> {