pub trait LspAdapter: 'static + Send + Sync {
Show 20 methods
// Required methods
fn name<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = LanguageServerName> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait;
fn short_name(&self) -> &'static str;
fn fetch_latest_server_version<'life0, 'life1, 'async_trait>(
&'life0 self,
delegate: &'life1 dyn LspAdapterDelegate
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Any + Send, Global>, Error>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn fetch_server_binary<'life0, 'life1, 'async_trait>(
&'life0 self,
version: Box<dyn Any + Send, Global>,
container_dir: PathBuf,
delegate: &'life1 dyn LspAdapterDelegate
) -> Pin<Box<dyn Future<Output = Result<LanguageServerBinary, Error>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn cached_server_binary<'life0, 'life1, 'async_trait>(
&'life0 self,
container_dir: PathBuf,
delegate: &'life1 dyn LspAdapterDelegate
) -> Pin<Box<dyn Future<Output = Option<LanguageServerBinary>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn installation_test_binary<'life0, 'async_trait>(
&'life0 self,
container_dir: PathBuf
) -> Pin<Box<dyn Future<Output = Option<LanguageServerBinary>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait;
// Provided methods
fn will_fetch_server(
&self,
_: &Arc<dyn LspAdapterDelegate, Global>,
_: &mut AsyncAppContext
) -> Option<Task<Result<(), Error>>> { ... }
fn will_start_server(
&self,
_: &Arc<dyn LspAdapterDelegate, Global>,
_: &mut AsyncAppContext
) -> Option<Task<Result<(), Error>>> { ... }
fn can_be_reinstalled(&self) -> bool { ... }
fn process_diagnostics(&self, _: &mut PublishDiagnosticsParams) { ... }
fn process_completion<'life0, 'life1, 'async_trait>(
&'life0 self,
_: &'life1 mut CompletionItem
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait { ... }
fn label_for_completion<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 CompletionItem,
_: &'life2 Arc<Language, Global>
) -> Pin<Box<dyn Future<Output = Option<CodeLabel>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait { ... }
fn label_for_symbol<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_: &'life1 str,
__arg2: SymbolKind,
_: &'life2 Arc<Language, Global>
) -> Pin<Box<dyn Future<Output = Option<CodeLabel>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait { ... }
fn initialization_options<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<Value>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn workspace_configuration(
&self,
_: &mut AppContext
) -> Pin<Box<dyn Future<Output = Value> + Send, Global>> { ... }
fn code_action_kinds(&self) -> Option<Vec<CodeActionKind, Global>> { ... }
fn disk_based_diagnostic_sources<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<String, Global>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn disk_based_diagnostics_progress_token<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<String>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn language_ids<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HashMap<String, String, RandomState>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn prettier_plugins(&self) -> &[&'static str] { ... }
}