Make `LspAdapter::process_diagnostics` optional

Antonio Scandurra created

Change summary

crates/language/src/language.rs        | 3 ++-
crates/zed/src/languages/c.rs          | 2 --
crates/zed/src/languages/cpp.rs        | 2 --
crates/zed/src/languages/json.rs       | 2 --
crates/zed/src/languages/typescript.rs | 2 --
5 files changed, 2 insertions(+), 9 deletions(-)

Detailed changes

crates/language/src/language.rs 🔗

@@ -77,7 +77,8 @@ pub trait LspAdapter: 'static + Send + Sync {
         container_dir: PathBuf,
     ) -> BoxFuture<'static, Result<PathBuf>>;
     fn cached_server_binary(&self, container_dir: PathBuf) -> BoxFuture<'static, Option<PathBuf>>;
-    fn process_diagnostics(&self, diagnostics: &mut lsp::PublishDiagnosticsParams);
+
+    fn process_diagnostics(&self, _: &mut lsp::PublishDiagnosticsParams) {}
 
     fn label_for_completion(&self, _: &lsp::CompletionItem, _: &Language) -> Option<CodeLabel> {
         None

crates/zed/src/languages/c.rs 🔗

@@ -105,6 +105,4 @@ impl super::LspAdapter for CLspAdapter {
         .log_err()
         .boxed()
     }
-
-    fn process_diagnostics(&self, _: &mut lsp::PublishDiagnosticsParams) {}
 }

crates/zed/src/languages/cpp.rs 🔗

@@ -30,6 +30,4 @@ impl super::LspAdapter for CppLspAdapter {
     fn cached_server_binary(&self, container_dir: PathBuf) -> BoxFuture<'static, Option<PathBuf>> {
         super::c::CLspAdapter.cached_server_binary(container_dir)
     }
-
-    fn process_diagnostics(&self, _: &mut lsp::PublishDiagnosticsParams) {}
 }

crates/zed/src/languages/json.rs 🔗

@@ -120,8 +120,6 @@ impl LspAdapter for JsonLspAdapter {
         .boxed()
     }
 
-    fn process_diagnostics(&self, _: &mut lsp::PublishDiagnosticsParams) {}
-
     fn initialization_options(&self) -> Option<serde_json::Value> {
         Some(json!({
             "provideFormatter": true

crates/zed/src/languages/typescript.rs 🔗

@@ -113,8 +113,6 @@ impl LspAdapter for TypeScriptLspAdapter {
         .boxed()
     }
 
-    fn process_diagnostics(&self, _: &mut lsp::PublishDiagnosticsParams) {}
-
     fn label_for_completion(
         &self,
         item: &lsp::CompletionItem,