Struct ServerSocket

Source
pub struct ServerSocket(/* private fields */);
Expand description

The socket for Language Client to communicate with the Language Server peer.

Implementations§

Source§

impl ServerSocket

Source

pub fn new_closed() -> Self

Create a closed socket outside a main loop. Any interaction will immediately return an error of Error::ServiceStopped.

This works as a placeholder where a socket is required but actually unused.

§Note

To prevent accidental misusages, this method is NOT implemented as Default::default intentionally.

Source

pub async fn request<R: Request>(&self, params: R::Params) -> Result<R::Result>

Send a request to the peer and wait for its response.

§Errors
Source

pub fn notify<N: Notification>(&self, params: N::Params) -> Result<()>

Send a notification to the peer and wait for its response.

This is done asynchronously. An Ok result indicates the message is successfully queued, but may not be sent to the peer yet.

§Errors
Source

pub fn emit<E: Send + 'static>(&self, event: E) -> Result<()>

Emit an arbitrary loopback event object to the service handler.

This is done asynchronously. An Ok result indicates the message is successfully queued, but may not be processed yet.

§Errors

Trait Implementations§

Source§

impl Clone for ServerSocket

Source§

fn clone(&self) -> ServerSocket

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ServerSocket

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl LanguageServer for &ServerSocket

Source§

type Error = Error

Should always be defined to ResponseError for user implementations.
Source§

type NotifyResult = Result<(), Error>

Should always be defined to ControlFlow<Result<()>> for user implementations.
Source§

fn initialize( &mut self, params: <Initialize as Request>::Params, ) -> BoxFuture<'static, Result<<Initialize as Request>::Result, Self::Error>>

Source§

fn shutdown( &mut self, (): <Shutdown as Request>::Params, ) -> BoxFuture<'static, Result<<Shutdown as Request>::Result, Self::Error>>

Source§

fn implementation( &mut self, params: <GotoImplementation as Request>::Params, ) -> BoxFuture<'static, Result<<GotoImplementation as Request>::Result, Self::Error>>

Source§

fn type_definition( &mut self, params: <GotoTypeDefinition as Request>::Params, ) -> BoxFuture<'static, Result<<GotoTypeDefinition as Request>::Result, Self::Error>>

Source§

fn document_color( &mut self, params: <DocumentColor as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentColor as Request>::Result, Self::Error>>

Source§

fn color_presentation( &mut self, params: <ColorPresentationRequest as Request>::Params, ) -> BoxFuture<'static, Result<<ColorPresentationRequest as Request>::Result, Self::Error>>

Source§

fn folding_range( &mut self, params: <FoldingRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<FoldingRangeRequest as Request>::Result, Self::Error>>

Source§

fn declaration( &mut self, params: <GotoDeclaration as Request>::Params, ) -> BoxFuture<'static, Result<<GotoDeclaration as Request>::Result, Self::Error>>

Source§

fn selection_range( &mut self, params: <SelectionRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SelectionRangeRequest as Request>::Result, Self::Error>>

Source§

fn prepare_call_hierarchy( &mut self, params: <CallHierarchyPrepare as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyPrepare as Request>::Result, Self::Error>>

Source§

fn incoming_calls( &mut self, params: <CallHierarchyIncomingCalls as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyIncomingCalls as Request>::Result, Self::Error>>

Source§

fn outgoing_calls( &mut self, params: <CallHierarchyOutgoingCalls as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyOutgoingCalls as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_full( &mut self, params: <SemanticTokensFullRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensFullRequest as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_full_delta( &mut self, params: <SemanticTokensFullDeltaRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensFullDeltaRequest as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_range( &mut self, params: <SemanticTokensRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensRangeRequest as Request>::Result, Self::Error>>

Source§

fn linked_editing_range( &mut self, params: <LinkedEditingRange as Request>::Params, ) -> BoxFuture<'static, Result<<LinkedEditingRange as Request>::Result, Self::Error>>

Source§

fn will_create_files( &mut self, params: <WillCreateFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillCreateFiles as Request>::Result, Self::Error>>

Source§

fn will_rename_files( &mut self, params: <WillRenameFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillRenameFiles as Request>::Result, Self::Error>>

Source§

fn will_delete_files( &mut self, params: <WillDeleteFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillDeleteFiles as Request>::Result, Self::Error>>

Source§

fn moniker( &mut self, params: <MonikerRequest as Request>::Params, ) -> BoxFuture<'static, Result<<MonikerRequest as Request>::Result, Self::Error>>

Source§

fn prepare_type_hierarchy( &mut self, params: <TypeHierarchyPrepare as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchyPrepare as Request>::Result, Self::Error>>

Source§

fn supertypes( &mut self, params: <TypeHierarchySupertypes as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchySupertypes as Request>::Result, Self::Error>>

Source§

fn subtypes( &mut self, params: <TypeHierarchySubtypes as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchySubtypes as Request>::Result, Self::Error>>

Source§

fn inline_value( &mut self, params: <InlineValueRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlineValueRequest as Request>::Result, Self::Error>>

Source§

fn inlay_hint( &mut self, params: <InlayHintRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlayHintRequest as Request>::Result, Self::Error>>

Source§

fn inlay_hint_resolve( &mut self, params: <InlayHintResolveRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlayHintResolveRequest as Request>::Result, Self::Error>>

Source§

fn document_diagnostic( &mut self, params: <DocumentDiagnosticRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentDiagnosticRequest as Request>::Result, Self::Error>>

Source§

fn workspace_diagnostic( &mut self, params: <WorkspaceDiagnosticRequest as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceDiagnosticRequest as Request>::Result, Self::Error>>

Source§

fn will_save_wait_until( &mut self, params: <WillSaveWaitUntil as Request>::Params, ) -> BoxFuture<'static, Result<<WillSaveWaitUntil as Request>::Result, Self::Error>>

Source§

fn completion( &mut self, params: <Completion as Request>::Params, ) -> BoxFuture<'static, Result<<Completion as Request>::Result, Self::Error>>

Source§

fn completion_item_resolve( &mut self, params: <ResolveCompletionItem as Request>::Params, ) -> BoxFuture<'static, Result<<ResolveCompletionItem as Request>::Result, Self::Error>>

Source§

fn hover( &mut self, params: <HoverRequest as Request>::Params, ) -> BoxFuture<'static, Result<<HoverRequest as Request>::Result, Self::Error>>

Source§

fn signature_help( &mut self, params: <SignatureHelpRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SignatureHelpRequest as Request>::Result, Self::Error>>

Source§

fn definition( &mut self, params: <GotoDefinition as Request>::Params, ) -> BoxFuture<'static, Result<<GotoDefinition as Request>::Result, Self::Error>>

Source§

fn references( &mut self, params: <References as Request>::Params, ) -> BoxFuture<'static, Result<<References as Request>::Result, Self::Error>>

Source§

fn document_highlight( &mut self, params: <DocumentHighlightRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentHighlightRequest as Request>::Result, Self::Error>>

Source§

fn document_symbol( &mut self, params: <DocumentSymbolRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentSymbolRequest as Request>::Result, Self::Error>>

Source§

fn code_action( &mut self, params: <CodeActionRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeActionRequest as Request>::Result, Self::Error>>

Source§

fn code_action_resolve( &mut self, params: <CodeActionResolveRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeActionResolveRequest as Request>::Result, Self::Error>>

Source§

fn symbol( &mut self, params: <WorkspaceSymbolRequest as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceSymbolRequest as Request>::Result, Self::Error>>

Source§

fn workspace_symbol_resolve( &mut self, params: <WorkspaceSymbolResolve as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceSymbolResolve as Request>::Result, Self::Error>>

Source§

fn code_lens( &mut self, params: <CodeLensRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeLensRequest as Request>::Result, Self::Error>>

Source§

fn code_lens_resolve( &mut self, params: <CodeLensResolve as Request>::Params, ) -> BoxFuture<'static, Result<<CodeLensResolve as Request>::Result, Self::Error>>

Source§

fn formatting( &mut self, params: <Formatting as Request>::Params, ) -> BoxFuture<'static, Result<<Formatting as Request>::Result, Self::Error>>

Source§

fn range_formatting( &mut self, params: <RangeFormatting as Request>::Params, ) -> BoxFuture<'static, Result<<RangeFormatting as Request>::Result, Self::Error>>

Source§

fn on_type_formatting( &mut self, params: <OnTypeFormatting as Request>::Params, ) -> BoxFuture<'static, Result<<OnTypeFormatting as Request>::Result, Self::Error>>

Source§

fn rename( &mut self, params: <Rename as Request>::Params, ) -> BoxFuture<'static, Result<<Rename as Request>::Result, Self::Error>>

Source§

fn prepare_rename( &mut self, params: <PrepareRenameRequest as Request>::Params, ) -> BoxFuture<'static, Result<<PrepareRenameRequest as Request>::Result, Self::Error>>

Source§

fn execute_command( &mut self, params: <ExecuteCommand as Request>::Params, ) -> BoxFuture<'static, Result<<ExecuteCommand as Request>::Result, Self::Error>>

Source§

fn initialized( &mut self, params: <Initialized as Notification>::Params, ) -> Self::NotifyResult

Source§

fn exit(&mut self, (): <Exit as Notification>::Params) -> Self::NotifyResult

Source§

fn did_change_workspace_folders( &mut self, params: <DidChangeWorkspaceFolders as Notification>::Params, ) -> Self::NotifyResult

Source§

fn work_done_progress_cancel( &mut self, params: <WorkDoneProgressCancel as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_create_files( &mut self, params: <DidCreateFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_rename_files( &mut self, params: <DidRenameFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_delete_files( &mut self, params: <DidDeleteFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change_configuration( &mut self, params: <DidChangeConfiguration as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_open( &mut self, params: <DidOpenTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change( &mut self, params: <DidChangeTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_close( &mut self, params: <DidCloseTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_save( &mut self, params: <DidSaveTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn will_save( &mut self, params: <WillSaveTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change_watched_files( &mut self, params: <DidChangeWatchedFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn set_trace( &mut self, params: <SetTrace as Notification>::Params, ) -> Self::NotifyResult

Source§

fn cancel_request( &mut self, params: <Cancel as Notification>::Params, ) -> Self::NotifyResult

Source§

fn progress( &mut self, params: <Progress as Notification>::Params, ) -> Self::NotifyResult

Source§

impl LanguageServer for ServerSocket

Source§

type Error = Error

Should always be defined to ResponseError for user implementations.
Source§

type NotifyResult = Result<(), Error>

Should always be defined to ControlFlow<Result<()>> for user implementations.
Source§

fn initialize( &mut self, params: <Initialize as Request>::Params, ) -> BoxFuture<'static, Result<<Initialize as Request>::Result, Self::Error>>

Source§

fn shutdown( &mut self, (): <Shutdown as Request>::Params, ) -> BoxFuture<'static, Result<<Shutdown as Request>::Result, Self::Error>>

Source§

fn implementation( &mut self, params: <GotoImplementation as Request>::Params, ) -> BoxFuture<'static, Result<<GotoImplementation as Request>::Result, Self::Error>>

Source§

fn type_definition( &mut self, params: <GotoTypeDefinition as Request>::Params, ) -> BoxFuture<'static, Result<<GotoTypeDefinition as Request>::Result, Self::Error>>

Source§

fn document_color( &mut self, params: <DocumentColor as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentColor as Request>::Result, Self::Error>>

Source§

fn color_presentation( &mut self, params: <ColorPresentationRequest as Request>::Params, ) -> BoxFuture<'static, Result<<ColorPresentationRequest as Request>::Result, Self::Error>>

Source§

fn folding_range( &mut self, params: <FoldingRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<FoldingRangeRequest as Request>::Result, Self::Error>>

Source§

fn declaration( &mut self, params: <GotoDeclaration as Request>::Params, ) -> BoxFuture<'static, Result<<GotoDeclaration as Request>::Result, Self::Error>>

Source§

fn selection_range( &mut self, params: <SelectionRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SelectionRangeRequest as Request>::Result, Self::Error>>

Source§

fn prepare_call_hierarchy( &mut self, params: <CallHierarchyPrepare as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyPrepare as Request>::Result, Self::Error>>

Source§

fn incoming_calls( &mut self, params: <CallHierarchyIncomingCalls as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyIncomingCalls as Request>::Result, Self::Error>>

Source§

fn outgoing_calls( &mut self, params: <CallHierarchyOutgoingCalls as Request>::Params, ) -> BoxFuture<'static, Result<<CallHierarchyOutgoingCalls as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_full( &mut self, params: <SemanticTokensFullRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensFullRequest as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_full_delta( &mut self, params: <SemanticTokensFullDeltaRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensFullDeltaRequest as Request>::Result, Self::Error>>

Source§

fn semantic_tokens_range( &mut self, params: <SemanticTokensRangeRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SemanticTokensRangeRequest as Request>::Result, Self::Error>>

Source§

fn linked_editing_range( &mut self, params: <LinkedEditingRange as Request>::Params, ) -> BoxFuture<'static, Result<<LinkedEditingRange as Request>::Result, Self::Error>>

Source§

fn will_create_files( &mut self, params: <WillCreateFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillCreateFiles as Request>::Result, Self::Error>>

Source§

fn will_rename_files( &mut self, params: <WillRenameFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillRenameFiles as Request>::Result, Self::Error>>

Source§

fn will_delete_files( &mut self, params: <WillDeleteFiles as Request>::Params, ) -> BoxFuture<'static, Result<<WillDeleteFiles as Request>::Result, Self::Error>>

Source§

fn moniker( &mut self, params: <MonikerRequest as Request>::Params, ) -> BoxFuture<'static, Result<<MonikerRequest as Request>::Result, Self::Error>>

Source§

fn prepare_type_hierarchy( &mut self, params: <TypeHierarchyPrepare as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchyPrepare as Request>::Result, Self::Error>>

Source§

fn supertypes( &mut self, params: <TypeHierarchySupertypes as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchySupertypes as Request>::Result, Self::Error>>

Source§

fn subtypes( &mut self, params: <TypeHierarchySubtypes as Request>::Params, ) -> BoxFuture<'static, Result<<TypeHierarchySubtypes as Request>::Result, Self::Error>>

Source§

fn inline_value( &mut self, params: <InlineValueRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlineValueRequest as Request>::Result, Self::Error>>

Source§

fn inlay_hint( &mut self, params: <InlayHintRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlayHintRequest as Request>::Result, Self::Error>>

Source§

fn inlay_hint_resolve( &mut self, params: <InlayHintResolveRequest as Request>::Params, ) -> BoxFuture<'static, Result<<InlayHintResolveRequest as Request>::Result, Self::Error>>

Source§

fn document_diagnostic( &mut self, params: <DocumentDiagnosticRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentDiagnosticRequest as Request>::Result, Self::Error>>

Source§

fn workspace_diagnostic( &mut self, params: <WorkspaceDiagnosticRequest as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceDiagnosticRequest as Request>::Result, Self::Error>>

Source§

fn will_save_wait_until( &mut self, params: <WillSaveWaitUntil as Request>::Params, ) -> BoxFuture<'static, Result<<WillSaveWaitUntil as Request>::Result, Self::Error>>

Source§

fn completion( &mut self, params: <Completion as Request>::Params, ) -> BoxFuture<'static, Result<<Completion as Request>::Result, Self::Error>>

Source§

fn completion_item_resolve( &mut self, params: <ResolveCompletionItem as Request>::Params, ) -> BoxFuture<'static, Result<<ResolveCompletionItem as Request>::Result, Self::Error>>

Source§

fn hover( &mut self, params: <HoverRequest as Request>::Params, ) -> BoxFuture<'static, Result<<HoverRequest as Request>::Result, Self::Error>>

Source§

fn signature_help( &mut self, params: <SignatureHelpRequest as Request>::Params, ) -> BoxFuture<'static, Result<<SignatureHelpRequest as Request>::Result, Self::Error>>

Source§

fn definition( &mut self, params: <GotoDefinition as Request>::Params, ) -> BoxFuture<'static, Result<<GotoDefinition as Request>::Result, Self::Error>>

Source§

fn references( &mut self, params: <References as Request>::Params, ) -> BoxFuture<'static, Result<<References as Request>::Result, Self::Error>>

Source§

fn document_highlight( &mut self, params: <DocumentHighlightRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentHighlightRequest as Request>::Result, Self::Error>>

Source§

fn document_symbol( &mut self, params: <DocumentSymbolRequest as Request>::Params, ) -> BoxFuture<'static, Result<<DocumentSymbolRequest as Request>::Result, Self::Error>>

Source§

fn code_action( &mut self, params: <CodeActionRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeActionRequest as Request>::Result, Self::Error>>

Source§

fn code_action_resolve( &mut self, params: <CodeActionResolveRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeActionResolveRequest as Request>::Result, Self::Error>>

Source§

fn symbol( &mut self, params: <WorkspaceSymbolRequest as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceSymbolRequest as Request>::Result, Self::Error>>

Source§

fn workspace_symbol_resolve( &mut self, params: <WorkspaceSymbolResolve as Request>::Params, ) -> BoxFuture<'static, Result<<WorkspaceSymbolResolve as Request>::Result, Self::Error>>

Source§

fn code_lens( &mut self, params: <CodeLensRequest as Request>::Params, ) -> BoxFuture<'static, Result<<CodeLensRequest as Request>::Result, Self::Error>>

Source§

fn code_lens_resolve( &mut self, params: <CodeLensResolve as Request>::Params, ) -> BoxFuture<'static, Result<<CodeLensResolve as Request>::Result, Self::Error>>

Source§

fn formatting( &mut self, params: <Formatting as Request>::Params, ) -> BoxFuture<'static, Result<<Formatting as Request>::Result, Self::Error>>

Source§

fn range_formatting( &mut self, params: <RangeFormatting as Request>::Params, ) -> BoxFuture<'static, Result<<RangeFormatting as Request>::Result, Self::Error>>

Source§

fn on_type_formatting( &mut self, params: <OnTypeFormatting as Request>::Params, ) -> BoxFuture<'static, Result<<OnTypeFormatting as Request>::Result, Self::Error>>

Source§

fn rename( &mut self, params: <Rename as Request>::Params, ) -> BoxFuture<'static, Result<<Rename as Request>::Result, Self::Error>>

Source§

fn prepare_rename( &mut self, params: <PrepareRenameRequest as Request>::Params, ) -> BoxFuture<'static, Result<<PrepareRenameRequest as Request>::Result, Self::Error>>

Source§

fn execute_command( &mut self, params: <ExecuteCommand as Request>::Params, ) -> BoxFuture<'static, Result<<ExecuteCommand as Request>::Result, Self::Error>>

Source§

fn initialized( &mut self, params: <Initialized as Notification>::Params, ) -> Self::NotifyResult

Source§

fn exit(&mut self, (): <Exit as Notification>::Params) -> Self::NotifyResult

Source§

fn did_change_workspace_folders( &mut self, params: <DidChangeWorkspaceFolders as Notification>::Params, ) -> Self::NotifyResult

Source§

fn work_done_progress_cancel( &mut self, params: <WorkDoneProgressCancel as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_create_files( &mut self, params: <DidCreateFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_rename_files( &mut self, params: <DidRenameFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_delete_files( &mut self, params: <DidDeleteFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change_configuration( &mut self, params: <DidChangeConfiguration as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_open( &mut self, params: <DidOpenTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change( &mut self, params: <DidChangeTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_close( &mut self, params: <DidCloseTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_save( &mut self, params: <DidSaveTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn will_save( &mut self, params: <WillSaveTextDocument as Notification>::Params, ) -> Self::NotifyResult

Source§

fn did_change_watched_files( &mut self, params: <DidChangeWatchedFiles as Notification>::Params, ) -> Self::NotifyResult

Source§

fn set_trace( &mut self, params: <SetTrace as Notification>::Params, ) -> Self::NotifyResult

Source§

fn cancel_request( &mut self, params: <Cancel as Notification>::Params, ) -> Self::NotifyResult

Source§

fn progress( &mut self, params: <Progress as Notification>::Params, ) -> Self::NotifyResult

Source§

impl LspService for ServerSocket

Available on crate feature forward only.
Source§

fn notify(&mut self, notif: AnyNotification) -> ControlFlow<Result<()>>

Source§

fn emit(&mut self, event: AnyEvent) -> ControlFlow<Result<()>>

The handler of an arbitrary AnyEvent. Read more
Source§

impl Service<AnyRequest> for ServerSocket

Available on crate feature forward only.
Source§

type Response = Value

Responses given by the service.
Source§

type Error = ResponseError

Errors produced by the service.
Source§

type Future = PeerSocketResponseFuture

The future response value.
Source§

fn poll_ready(&mut self, _cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>

Returns Poll::Ready(Ok(())) when the service is able to process requests. Read more
Source§

fn call(&mut self, req: AnyRequest) -> Self::Future

Process the request and return the response asynchronously. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,