Interface TextDocumentService


  • public interface TextDocumentService
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyIncomingCall>> callHierarchyIncomingCalls​(CallHierarchyIncomingCallsParams params)
      Provide all incoming calls for an item, e.g all callers for a method.
      default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyOutgoingCall>> callHierarchyOutgoingCalls​(CallHierarchyOutgoingCallsParams params)
      Provide all outgoing calls for an item, e.g call calls to functions, methods, or constructors from the given item.
      default java.util.concurrent.CompletableFuture<java.util.List<org.eclipse.lsp4j.jsonrpc.messages.Either<Command,​CodeAction>>> codeAction​(CodeActionParams params)
      The code action request is sent from the client to the server to compute commands for a given text document and range.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends CodeLens>> codeLens​(CodeLensParams params)
      The code lens request is sent from the client to the server to compute code lenses for a given text document.
      default java.util.concurrent.CompletableFuture<java.util.List<ColorPresentation>> colorPresentation​(ColorPresentationParams params)
      The color presentation request is sent from the client to the server to obtain a list of presentations for a color value at a given location.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<CompletionItem>,​CompletionList>> completion​(CompletionParams position)
      The Completion request is sent from the client to the server to compute completion items at a given cursor position.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> declaration​(DeclarationParams params)
      The go to declaration request is sent from the client to the server to resolve the declaration location of a symbol at a given text document position.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> definition​(DefinitionParams params)
      The goto definition request is sent from the client to the server to resolve the definition location of a symbol at a given text document position.
      default java.util.concurrent.CompletableFuture<DocumentDiagnosticReport> diagnostic​(DocumentDiagnosticParams params)
      The text document diagnostic request is sent from the client to the server to ask the server to compute the diagnostics for a given document.
      void didChange​(DidChangeTextDocumentParams params)
      The document change notification is sent from the client to the server to signal changes to a text document.
      void didClose​(DidCloseTextDocumentParams params)
      The document close notification is sent from the client to the server when the document got closed in the client.
      void didOpen​(DidOpenTextDocumentParams params)
      The document open notification is sent from the client to the server to signal newly opened text documents.
      void didSave​(DidSaveTextDocumentParams params)
      The document save notification is sent from the client to the server when the document for saved in the client.
      default java.util.concurrent.CompletableFuture<java.util.List<ColorInformation>> documentColor​(DocumentColorParams params)
      The document color request is sent from the client to the server to list all color references found in a given text document.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends DocumentHighlight>> documentHighlight​(DocumentHighlightParams params)
      The document highlight request is sent from the client to the server to to resolve a document highlights for a given text document position.
      default java.util.concurrent.CompletableFuture<java.util.List<DocumentLink>> documentLink​(DocumentLinkParams params)
      The document links request is sent from the client to the server to request the location of links in a document.
      default java.util.concurrent.CompletableFuture<DocumentLink> documentLinkResolve​(DocumentLink params)
      The document link resolve request is sent from the client to the server to resolve the target of a given document link.
      default java.util.concurrent.CompletableFuture<java.util.List<org.eclipse.lsp4j.jsonrpc.messages.Either<SymbolInformation,​DocumentSymbol>>> documentSymbol​(DocumentSymbolParams params)
      The document symbol request is sent from the client to the server to list all symbols found in a given text document.
      default java.util.concurrent.CompletableFuture<java.util.List<FoldingRange>> foldingRange​(FoldingRangeRequestParams params)
      The folding range request is sent from the client to the server to return all folding ranges found in a given text document.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends TextEdit>> formatting​(DocumentFormattingParams params)
      The document formatting request is sent from the client to the server to format a whole document.
      default java.util.concurrent.CompletableFuture<Hover> hover​(HoverParams params)
      The hover request is sent from the client to the server to request hover information at a given text document position.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> implementation​(ImplementationParams params)
      The goto implementation request is sent from the client to the server to resolve the implementation location of a symbol at a given text document position.
      default java.util.concurrent.CompletableFuture<java.util.List<InlayHint>> inlayHint​(InlayHintParams params)
      The inlay hints request is sent from the client to the server to compute inlay hints for a given [text document, range] tuple that may be rendered in the editor in place with other text.
      default java.util.concurrent.CompletableFuture<java.util.List<InlineValue>> inlineValue​(InlineValueParams params)
      The inline value request is sent from the client to the server to compute inline values for a given text document that may be rendered in the editor at the end of lines.
      default java.util.concurrent.CompletableFuture<LinkedEditingRanges> linkedEditingRange​(LinkedEditingRangeParams params)
      The linked editing range request is sent from the client to the server to return for a given position in a document the range of the symbol at the position and all ranges that have the same content.
      default java.util.concurrent.CompletableFuture<java.util.List<Moniker>> moniker​(MonikerParams params)
      Language Server Index Format (LSIF) introduced the concept of symbol monikers to help associate symbols across different indexes.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends TextEdit>> onTypeFormatting​(DocumentOnTypeFormattingParams params)
      The document on type formatting request is sent from the client to the server to format parts of the document during typing.
      default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyItem>> prepareCallHierarchy​(CallHierarchyPrepareParams params)
      Bootstraps call hierarchy by returning the item that is denoted by the given document and position.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either3<Range,​PrepareRenameResult,​PrepareRenameDefaultBehavior>> prepareRename​(PrepareRenameParams params)
      The prepare rename request is sent from the client to the server to setup and test the validity of a rename operation at a given location.
      default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> prepareTypeHierarchy​(TypeHierarchyPrepareParams params)
      The type hierarchy request is sent from the client to the server to return a type hierarchy for the language element of given text document positions.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends TextEdit>> rangeFormatting​(DocumentRangeFormattingParams params)
      The document range formatting request is sent from the client to the server to format a given range in a document.
      default java.util.concurrent.CompletableFuture<java.util.List<? extends Location>> references​(ReferenceParams params)
      The references request is sent from the client to the server to resolve project-wide references for the symbol denoted by the given text document position.
      default java.util.concurrent.CompletableFuture<WorkspaceEdit> rename​(RenameParams params)
      The rename request is sent from the client to the server to do a workspace wide rename of a symbol.
      default java.util.concurrent.CompletableFuture<CodeAction> resolveCodeAction​(CodeAction unresolved)
      The request is sent from the client to the server to resolve additional information for a given code action.
      default java.util.concurrent.CompletableFuture<CodeLens> resolveCodeLens​(CodeLens unresolved)
      The code lens resolve request is sent from the client to the server to resolve the command for a given code lens item.
      default java.util.concurrent.CompletableFuture<CompletionItem> resolveCompletionItem​(CompletionItem unresolved)
      The request is sent from the client to the server to resolve additional information for a given completion item.
      default java.util.concurrent.CompletableFuture<InlayHint> resolveInlayHint​(InlayHint unresolved)
      The request is sent from the client to the server to resolve additional information for a given inlay hint.
      default java.util.concurrent.CompletableFuture<java.util.List<SelectionRange>> selectionRange​(SelectionRangeParams params)
      The textDocument/selectionRange request is sent from the client to the server to return suggested selection ranges at an array of given positions.
      default java.util.concurrent.CompletableFuture<SemanticTokens> semanticTokensFull​(SemanticTokensParams params)
      The textDocument/semanticTokens/full request is sent from the client to the server to return the semantic tokens for a whole file.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<SemanticTokens,​SemanticTokensDelta>> semanticTokensFullDelta​(SemanticTokensDeltaParams params)
      The textDocument/semanticTokens/full/delta request is sent from the client to the server to return the semantic tokens delta for a whole file.
      default java.util.concurrent.CompletableFuture<SemanticTokens> semanticTokensRange​(SemanticTokensRangeParams params)
      The textDocument/semanticTokens/range request is sent from the client to the server to return the semantic tokens delta for a range.
      default java.util.concurrent.CompletableFuture<SignatureHelp> signatureHelp​(SignatureHelpParams params)
      The signature help request is sent from the client to the server to request signature information at a given cursor position.
      default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> typeDefinition​(TypeDefinitionParams params)
      The goto type definition request is sent from the client to the server to resolve the type definition location of a symbol at a given text document position.
      default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> typeHierarchySubtypes​(TypeHierarchySubtypesParams params)
      The request is sent from the client to the server to resolve the subtypes for a given type hierarchy item.
      default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> typeHierarchySupertypes​(TypeHierarchySupertypesParams params)
      The request is sent from the client to the server to resolve the supertypes for a given type hierarchy item.
      default void willSave​(WillSaveTextDocumentParams params)
      The document will save notification is sent from the client to the server before the document is actually saved.
      default java.util.concurrent.CompletableFuture<java.util.List<TextEdit>> willSaveWaitUntil​(WillSaveTextDocumentParams params)
      The document will save request is sent from the client to the server before the document is actually saved.
    • Method Detail

      • completion

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<CompletionItem>,​CompletionList>> completion​(CompletionParams position)
        The Completion request is sent from the client to the server to compute completion items at a given cursor position. Completion items are presented in the IntelliSense user interface. If computing complete completion items is expensive servers can additional provide a handler for the resolve completion item request. This request is sent when a completion item is selected in the user interface.

        Registration Options: CompletionRegistrationOptions

      • resolveCompletionItem

        default java.util.concurrent.CompletableFuture<CompletionItem> resolveCompletionItem​(CompletionItem unresolved)
        The request is sent from the client to the server to resolve additional information for a given completion item.
      • hover

        default java.util.concurrent.CompletableFuture<Hover> hover​(HoverParams params)
        The hover request is sent from the client to the server to request hover information at a given text document position.

        Registration Options: HoverRegistrationOptions

      • declaration

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> declaration​(DeclarationParams params)
        The go to declaration request is sent from the client to the server to resolve the declaration location of a symbol at a given text document position.

        Registration Options: DeclarationRegistrationOptions

        Since 3.14.0

      • definition

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> definition​(DefinitionParams params)
        The goto definition request is sent from the client to the server to resolve the definition location of a symbol at a given text document position.

        Registration Options: DefinitionRegistrationOptions

      • typeDefinition

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> typeDefinition​(TypeDefinitionParams params)
        The goto type definition request is sent from the client to the server to resolve the type definition location of a symbol at a given text document position.

        Registration Options: TypeDefinitionRegistrationOptions

        Since 3.6.0

      • implementation

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<java.util.List<? extends Location>,​java.util.List<? extends LocationLink>>> implementation​(ImplementationParams params)
        The goto implementation request is sent from the client to the server to resolve the implementation location of a symbol at a given text document position.

        Registration Options: ImplementationRegistrationOptions

        Since 3.6.0

      • references

        default java.util.concurrent.CompletableFuture<java.util.List<? extends Location>> references​(ReferenceParams params)
        The references request is sent from the client to the server to resolve project-wide references for the symbol denoted by the given text document position.

        Registration Options: ReferenceRegistrationOptions

      • codeAction

        default java.util.concurrent.CompletableFuture<java.util.List<org.eclipse.lsp4j.jsonrpc.messages.Either<Command,​CodeAction>>> codeAction​(CodeActionParams params)
        The code action request is sent from the client to the server to compute commands for a given text document and range. These commands are typically code fixes to either fix problems or to beautify/refactor code.

        Registration Options: CodeActionRegistrationOptions

      • resolveCodeAction

        default java.util.concurrent.CompletableFuture<CodeAction> resolveCodeAction​(CodeAction unresolved)
        The request is sent from the client to the server to resolve additional information for a given code action. This is usually used to compute the `edit` property of a code action to avoid its unnecessary computation during the `textDocument/codeAction` request.

        Since 3.16.0

      • codeLens

        default java.util.concurrent.CompletableFuture<java.util.List<? extends CodeLens>> codeLens​(CodeLensParams params)
        The code lens request is sent from the client to the server to compute code lenses for a given text document.

        Registration Options: CodeLensRegistrationOptions

      • resolveCodeLens

        default java.util.concurrent.CompletableFuture<CodeLens> resolveCodeLens​(CodeLens unresolved)
        The code lens resolve request is sent from the client to the server to resolve the command for a given code lens item.
      • rename

        default java.util.concurrent.CompletableFuture<WorkspaceEdit> rename​(RenameParams params)
        The rename request is sent from the client to the server to do a workspace wide rename of a symbol.

        Registration Options: RenameRegistrationOptions

      • linkedEditingRange

        default java.util.concurrent.CompletableFuture<LinkedEditingRanges> linkedEditingRange​(LinkedEditingRangeParams params)
        The linked editing range request is sent from the client to the server to return for a given position in a document the range of the symbol at the position and all ranges that have the same content. Optionally a word pattern can be returned to describe valid contents. A rename to one of the ranges can be applied to all other ranges if the new content is valid. If no result-specific word pattern is provided, the word pattern from the client's language configuration is used.

        Registration Options: LinkedEditingRangeRegistrationOptions

        Since 3.16.0

      • didOpen

        void didOpen​(DidOpenTextDocumentParams params)
        The document open notification is sent from the client to the server to signal newly opened text documents. The document's truth is now managed by the client and the server must not try to read the document's truth using the document's uri.

        Registration Options: TextDocumentRegistrationOptions

      • didClose

        void didClose​(DidCloseTextDocumentParams params)
        The document close notification is sent from the client to the server when the document got closed in the client. The document's truth now exists where the document's uri points to (e.g. if the document's uri is a file uri the truth now exists on disk).

        Registration Options: TextDocumentRegistrationOptions

      • willSaveWaitUntil

        default java.util.concurrent.CompletableFuture<java.util.List<TextEdit>> willSaveWaitUntil​(WillSaveTextDocumentParams params)
        The document will save request is sent from the client to the server before the document is actually saved. The request can return an array of TextEdits which will be applied to the text document before it is saved. Please note that clients might drop results if computing the text edits took too long or if a server constantly fails on this request. This is done to keep the save fast and reliable.

        Registration Options: TextDocumentRegistrationOptions

      • documentLinkResolve

        default java.util.concurrent.CompletableFuture<DocumentLink> documentLinkResolve​(DocumentLink params)
        The document link resolve request is sent from the client to the server to resolve the target of a given document link.
      • documentColor

        default java.util.concurrent.CompletableFuture<java.util.List<ColorInformation>> documentColor​(DocumentColorParams params)
        The document color request is sent from the client to the server to list all color references found in a given text document. Along with the range, a color value in RGB is returned.

        Clients can use the result to decorate color references in an editor. For example:

        • Color boxes showing the actual color next to the reference
        • Show a color picker when a color reference is edited

        Since 3.6.0

      • colorPresentation

        default java.util.concurrent.CompletableFuture<java.util.List<ColorPresentation>> colorPresentation​(ColorPresentationParams params)
        The color presentation request is sent from the client to the server to obtain a list of presentations for a color value at a given location. Clients can use the result to

        • modify a color reference.
        • show in a color picker and let users pick one of the presentations

        Since 3.6.0

      • foldingRange

        default java.util.concurrent.CompletableFuture<java.util.List<FoldingRange>> foldingRange​(FoldingRangeRequestParams params)
        The folding range request is sent from the client to the server to return all folding ranges found in a given text document.

        Since 3.10.0

      • prepareRename

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either3<Range,​PrepareRenameResult,​PrepareRenameDefaultBehavior>> prepareRename​(PrepareRenameParams params)
        The prepare rename request is sent from the client to the server to setup and test the validity of a rename operation at a given location.

        Since 3.12.0

      • prepareTypeHierarchy

        default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> prepareTypeHierarchy​(TypeHierarchyPrepareParams params)
        The type hierarchy request is sent from the client to the server to return a type hierarchy for the language element of given text document positions. Will return null if the server couldn't infer a valid type from the position. The type hierarchy requests are executed in two steps:

        1. first a type hierarchy item is prepared for the given text document position.
        2. for a type hierarchy item the supertype or subtype type hierarchy items are resolved.

        Since 3.17.0

      • typeHierarchySupertypes

        default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> typeHierarchySupertypes​(TypeHierarchySupertypesParams params)
        The request is sent from the client to the server to resolve the supertypes for a given type hierarchy item. Will return null if the server couldn't infer a valid type from TypeHierarchySupertypesParams.item. The request doesn't define its own client and server capabilities. It is only issued if a server registers for the textDocument/prepareTypeHierarchy request.

        Since 3.17.0

      • typeHierarchySubtypes

        default java.util.concurrent.CompletableFuture<java.util.List<TypeHierarchyItem>> typeHierarchySubtypes​(TypeHierarchySubtypesParams params)
        The request is sent from the client to the server to resolve the subtypes for a given type hierarchy item. Will return null if the server couldn't infer a valid type from TypeHierarchySubtypesParams.item. The request doesn't define its own client and server capabilities. It is only issued if a server registers for the textDocument/prepareTypeHierarchy request.

        Since 3.17.0

      • prepareCallHierarchy

        default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyItem>> prepareCallHierarchy​(CallHierarchyPrepareParams params)
        Bootstraps call hierarchy by returning the item that is denoted by the given document and position. This item will be used as entry into the call graph. Providers should return null when there is no item at the given location.

        Since 3.16.0

      • callHierarchyIncomingCalls

        default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyIncomingCall>> callHierarchyIncomingCalls​(CallHierarchyIncomingCallsParams params)
        Provide all incoming calls for an item, e.g all callers for a method. In graph terms this describes directed and annotated edges inside the call graph, e.g the given item is the starting node and the result is the nodes that can be reached.

        Since 3.16.0

      • callHierarchyOutgoingCalls

        default java.util.concurrent.CompletableFuture<java.util.List<CallHierarchyOutgoingCall>> callHierarchyOutgoingCalls​(CallHierarchyOutgoingCallsParams params)
        Provide all outgoing calls for an item, e.g call calls to functions, methods, or constructors from the given item. In graph terms this describes directed and annotated edges inside the call graph, e.g the given item is the starting node and the result is the nodes that can be reached.

        Since 3.16.0

      • selectionRange

        default java.util.concurrent.CompletableFuture<java.util.List<SelectionRange>> selectionRange​(SelectionRangeParams params)
        The textDocument/selectionRange request is sent from the client to the server to return suggested selection ranges at an array of given positions. A selection range is a range around the cursor position which the user might be interested in selecting.

        Since 3.15.0

      • semanticTokensFull

        default java.util.concurrent.CompletableFuture<SemanticTokens> semanticTokensFull​(SemanticTokensParams params)
        The textDocument/semanticTokens/full request is sent from the client to the server to return the semantic tokens for a whole file.

        Since 3.16.0

      • semanticTokensFullDelta

        default java.util.concurrent.CompletableFuture<org.eclipse.lsp4j.jsonrpc.messages.Either<SemanticTokens,​SemanticTokensDelta>> semanticTokensFullDelta​(SemanticTokensDeltaParams params)
        The textDocument/semanticTokens/full/delta request is sent from the client to the server to return the semantic tokens delta for a whole file.

        Since 3.16.0

      • semanticTokensRange

        default java.util.concurrent.CompletableFuture<SemanticTokens> semanticTokensRange​(SemanticTokensRangeParams params)
        The textDocument/semanticTokens/range request is sent from the client to the server to return the semantic tokens delta for a range.

        When a user opens a file it can be beneficial to only compute the semantic tokens for the visible range (faster rendering of the tokens in the user interface). If a server can compute these tokens faster than for the whole file it can provide a handler for the textDocument/semanticTokens/range request to handle this case special. Please note that if a client also announces that it will send the textDocument/semanticTokens/range server should implement this request as well to allow for flicker free scrolling and semantic coloring of a minimap.

        Since 3.16.0

      • moniker

        default java.util.concurrent.CompletableFuture<java.util.List<Moniker>> moniker​(MonikerParams params)
        Language Server Index Format (LSIF) introduced the concept of symbol monikers to help associate symbols across different indexes. This request adds capability for LSP server implementations to provide the same symbol moniker information given a text document position. Clients can utilize this method to get the moniker at the current location in a file user is editing and do further code navigation queries in other services that rely on LSIF indexes and link symbols together.

        The textDocument/moniker request is sent from the client to the server to get the symbol monikers for a given text document position. An array of Moniker types is returned as response to indicate possible monikers at the given location. If no monikers can be calculated, an empty array or null should be returned.

        Since 3.16.0

      • inlayHint

        default java.util.concurrent.CompletableFuture<java.util.List<InlayHint>> inlayHint​(InlayHintParams params)
        The inlay hints request is sent from the client to the server to compute inlay hints for a given [text document, range] tuple that may be rendered in the editor in place with other text.

        Since 3.17.0

      • resolveInlayHint

        default java.util.concurrent.CompletableFuture<InlayHint> resolveInlayHint​(InlayHint unresolved)
        The request is sent from the client to the server to resolve additional information for a given inlay hint. This is usually used to compute the tooltip, location or command properties of an inlay hint's label part to avoid its unnecessary computation during the textDocument/inlayHint request.

        Since 3.17.0

      • inlineValue

        default java.util.concurrent.CompletableFuture<java.util.List<InlineValue>> inlineValue​(InlineValueParams params)
        The inline value request is sent from the client to the server to compute inline values for a given text document that may be rendered in the editor at the end of lines.

        Since 3.17.0

      • diagnostic

        default java.util.concurrent.CompletableFuture<DocumentDiagnosticReport> diagnostic​(DocumentDiagnosticParams params)
        The text document diagnostic request is sent from the client to the server to ask the server to compute the diagnostics for a given document. As with other pull requests the server is asked to compute the diagnostics for the currently synced version of the document.

        Since 3.17.0