ExternalLspClient

Trait ExternalLspClient 

Source
pub trait ExternalLspClient: Send + Sync {
    // Required methods
    fn forward_completion(
        &self,
        language: &str,
        uri: &str,
        position: Value,
        context: Value,
    ) -> LspResult<Option<Value>>;
    fn forward_diagnostics(
        &self,
        language: &str,
        uri: &str,
    ) -> LspResult<Option<Value>>;
    fn forward_hover(
        &self,
        language: &str,
        uri: &str,
        position: Value,
    ) -> LspResult<Option<Value>>;
    fn forward_definition(
        &self,
        language: &str,
        uri: &str,
        position: Value,
    ) -> LspResult<Option<Value>>;
    fn forward_references(
        &self,
        language: &str,
        uri: &str,
        position: Value,
    ) -> LspResult<Option<Value>>;
    fn is_available(&self, language: &str) -> bool;
}
Expand description

Trait for external LSP client

Required Methods§

Source

fn forward_completion( &self, language: &str, uri: &str, position: Value, context: Value, ) -> LspResult<Option<Value>>

Forward completion request to external LSP

Source

fn forward_diagnostics( &self, language: &str, uri: &str, ) -> LspResult<Option<Value>>

Forward diagnostics request to external LSP

Source

fn forward_hover( &self, language: &str, uri: &str, position: Value, ) -> LspResult<Option<Value>>

Forward hover request to external LSP

Source

fn forward_definition( &self, language: &str, uri: &str, position: Value, ) -> LspResult<Option<Value>>

Forward definition request to external LSP

Source

fn forward_references( &self, language: &str, uri: &str, position: Value, ) -> LspResult<Option<Value>>

Forward references request to external LSP

Source

fn is_available(&self, language: &str) -> bool

Check if external LSP is available for language

Implementors§