[−][src]Struct slide_ls::SlideLS 
A slide language server.
Fields
client: Clientdocument_registry: Mutex<RefCell<HashMap<Url, ProgramInfo>>>context: Mutex<RefCell<ProgramContext>>client_caps: Mutex<RefCell<ClientCapabilities>>Implementations
impl SlideLS[src]
pub fn new(client: Client) -> Self[src]
Creates a new language server given a server client.
pub fn capabilities() -> ServerCapabilities[src]
Returns capabilities of the language server.
async fn change<'_>(&'_ self, doc: Url, text: String, version: Option<i64>)[src]
fn close(&self, doc: &Url)[src]
fn doc_registry(&self) -> MutexGuard<'_, RefCell<HashMap<Url, ProgramInfo>>>[src]
fn get_program_info(&self, doc: &Url) -> MappedMutexGuard<'_, ProgramInfo>[src]
fn context(&self) -> MappedMutexGuard<'_, ProgramContext>[src]
fn client_caps(&self) -> MappedMutexGuard<'_, ClientCapabilities>[src]
Trait Implementations
impl LanguageServer for SlideLS[src]
fn initialize<'life0, 'async_trait>(
    &'life0 self, 
    params: InitializeParams
) -> Pin<Box<dyn Future<Output = Result<InitializeResult>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: InitializeParams
) -> Pin<Box<dyn Future<Output = Result<InitializeResult>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn initialized<'life0, 'async_trait>(
    &'life0 self, 
    _params: InitializedParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
_params: InitializedParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn shutdown<'life0, 'async_trait>(
    &'life0 self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn did_open<'life0, 'async_trait>(
    &'life0 self, 
    params: DidOpenTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: DidOpenTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn did_change<'life0, 'async_trait>(
    &'life0 self, 
    params: DidChangeTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: DidChangeTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn did_close<'life0, 'async_trait>(
    &'life0 self, 
    params: DidCloseTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: DidCloseTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn goto_definition<'life0, 'async_trait>(
    &'life0 self, 
    params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn hover<'life0, 'async_trait>(
    &'life0 self, 
    params: HoverParams
) -> Pin<Box<dyn Future<Output = Result<Option<Hover>>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: HoverParams
) -> Pin<Box<dyn Future<Output = Result<Option<Hover>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn references<'life0, 'async_trait>(
    &'life0 self, 
    params: ReferenceParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<Location>>>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: ReferenceParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<Location>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn document_highlight<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentHighlightParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<DocumentHighlight>>>> + Send + 'async_trait>> where
    'life0: 'async_trait,
    Self: 'async_trait, [src]
&'life0 self,
params: DocumentHighlightParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<DocumentHighlight>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn did_change_workspace_folders<'life0, 'async_trait>(
    &'life0 self, 
    params: DidChangeWorkspaceFoldersParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DidChangeWorkspaceFoldersParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn did_change_configuration<'life0, 'async_trait>(
    &'life0 self, 
    params: DidChangeConfigurationParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DidChangeConfigurationParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn did_change_watched_files<'life0, 'async_trait>(
    &'life0 self, 
    params: DidChangeWatchedFilesParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DidChangeWatchedFilesParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn symbol<'life0, 'async_trait>(
    &'life0 self, 
    params: WorkspaceSymbolParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<SymbolInformation>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: WorkspaceSymbolParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<SymbolInformation>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn execute_command<'life0, 'async_trait>(
    &'life0 self, 
    params: ExecuteCommandParams
) -> Pin<Box<dyn Future<Output = Result<Option<Value>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: ExecuteCommandParams
) -> Pin<Box<dyn Future<Output = Result<Option<Value>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn will_save<'life0, 'async_trait>(
    &'life0 self, 
    params: WillSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: WillSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn will_save_wait_until<'life0, 'async_trait>(
    &'life0 self, 
    params: WillSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: WillSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn did_save<'life0, 'async_trait>(
    &'life0 self, 
    params: DidSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DidSaveTextDocumentParams
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn completion<'life0, 'async_trait>(
    &'life0 self, 
    params: CompletionParams
) -> Pin<Box<dyn Future<Output = Result<Option<CompletionResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: CompletionParams
) -> Pin<Box<dyn Future<Output = Result<Option<CompletionResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn completion_resolve<'life0, 'async_trait>(
    &'life0 self, 
    params: CompletionItem
) -> Pin<Box<dyn Future<Output = Result<CompletionItem, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: CompletionItem
) -> Pin<Box<dyn Future<Output = Result<CompletionItem, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn signature_help<'life0, 'async_trait>(
    &'life0 self, 
    params: SignatureHelpParams
) -> Pin<Box<dyn Future<Output = Result<Option<SignatureHelp>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: SignatureHelpParams
) -> Pin<Box<dyn Future<Output = Result<Option<SignatureHelp>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn goto_declaration<'life0, 'async_trait>(
    &'life0 self, 
    params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn goto_type_definition<'life0, 'async_trait>(
    &'life0 self, 
    params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn goto_implementation<'life0, 'async_trait>(
    &'life0 self, 
    params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: GotoDefinitionParams
) -> Pin<Box<dyn Future<Output = Result<Option<GotoDefinitionResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn document_symbol<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentSymbolParams
) -> Pin<Box<dyn Future<Output = Result<Option<DocumentSymbolResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentSymbolParams
) -> Pin<Box<dyn Future<Output = Result<Option<DocumentSymbolResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn code_action<'life0, 'async_trait>(
    &'life0 self, 
    params: CodeActionParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<CodeActionOrCommand>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: CodeActionParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<CodeActionOrCommand>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn code_lens<'life0, 'async_trait>(
    &'life0 self, 
    params: CodeLensParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<CodeLens>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: CodeLensParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<CodeLens>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn code_lens_resolve<'life0, 'async_trait>(
    &'life0 self, 
    params: CodeLens
) -> Pin<Box<dyn Future<Output = Result<CodeLens, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: CodeLens
) -> Pin<Box<dyn Future<Output = Result<CodeLens, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn document_link<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentLinkParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<DocumentLink>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentLinkParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<DocumentLink>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn document_link_resolve<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentLink
) -> Pin<Box<dyn Future<Output = Result<DocumentLink, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentLink
) -> Pin<Box<dyn Future<Output = Result<DocumentLink, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn document_color<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentColorParams
) -> Pin<Box<dyn Future<Output = Result<Vec<ColorInformation>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentColorParams
) -> Pin<Box<dyn Future<Output = Result<Vec<ColorInformation>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn color_presentation<'life0, 'async_trait>(
    &'life0 self, 
    params: ColorPresentationParams
) -> Pin<Box<dyn Future<Output = Result<Vec<ColorPresentation>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: ColorPresentationParams
) -> Pin<Box<dyn Future<Output = Result<Vec<ColorPresentation>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn formatting<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn range_formatting<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentRangeFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentRangeFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn on_type_formatting<'life0, 'async_trait>(
    &'life0 self, 
    params: DocumentOnTypeFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: DocumentOnTypeFormattingParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<TextEdit>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn rename<'life0, 'async_trait>(
    &'life0 self, 
    params: RenameParams
) -> Pin<Box<dyn Future<Output = Result<Option<WorkspaceEdit>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: RenameParams
) -> Pin<Box<dyn Future<Output = Result<Option<WorkspaceEdit>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn prepare_rename<'life0, 'async_trait>(
    &'life0 self, 
    params: TextDocumentPositionParams
) -> Pin<Box<dyn Future<Output = Result<Option<PrepareRenameResponse>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: TextDocumentPositionParams
) -> Pin<Box<dyn Future<Output = Result<Option<PrepareRenameResponse>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn folding_range<'life0, 'async_trait>(
    &'life0 self, 
    params: FoldingRangeParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<FoldingRange>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: FoldingRangeParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<FoldingRange>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
#[must_use]fn selection_range<'life0, 'async_trait>(
    &'life0 self, 
    params: SelectionRangeParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<SelectionRange>>, Error>> + 'async_trait + Send>> where
    'life0: 'async_trait,
    Self: 'async_trait, 
&'life0 self,
params: SelectionRangeParams
) -> Pin<Box<dyn Future<Output = Result<Option<Vec<SelectionRange>>, Error>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations
impl !RefUnwindSafe for SlideLS
impl Send for SlideLS
impl Sync for SlideLS
impl Unpin for SlideLS
impl !UnwindSafe for SlideLS
Blanket Implementations
impl<T> Any for T where
    T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
    T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
    T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
    U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
    U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, [src]
U: TryFrom<T>,