Documentation
¶
Index ¶
- Constants
- func PathFromURI(uri string) string
- func URIFromPath(path string) string
- type CallHierarchyIncomingCall
- type CallHierarchyIncomingCallsParams
- type CallHierarchyItem
- type CallHierarchyOutgoingCall
- type CallHierarchyOutgoingCallsParams
- type Client
- func (c *Client) CallHierarchyIncomingCalls(ctx context.Context, item CallHierarchyItem) ([]CallHierarchyIncomingCall, error)
- func (c *Client) CallHierarchyOutgoingCalls(ctx context.Context, item CallHierarchyItem) ([]CallHierarchyOutgoingCall, error)
- func (c *Client) Close() error
- func (c *Client) ConnectProcess(stdin io.Writer, stdout io.Reader) error
- func (c *Client) Initialize(ctx context.Context, rootPath string) (*InitializeResult, error)
- func (c *Client) Notify(ctx context.Context, method string, params interface{}) error
- func (c *Client) RegisterNotification(method string, handler NotificationHandler)
- func (c *Client) Request(ctx context.Context, method string, params interface{}, result interface{}) error
- func (c *Client) RequestWithTimeout(ctx context.Context, method string, params interface{}, result interface{}, ...) error
- func (c *Client) Shutdown(ctx context.Context) error
- func (c *Client) TextDocumentChange(ctx context.Context, uri string, content string, version int) error
- func (c *Client) TextDocumentClose(ctx context.Context, uri string) error
- func (c *Client) TextDocumentDefinition(ctx context.Context, uri string, position Position) ([]Location, error)
- func (c *Client) TextDocumentDocumentSymbol(ctx context.Context, uri string) ([]DocumentSymbol, error)
- func (c *Client) TextDocumentHover(ctx context.Context, uri string, position Position) (*Hover, error)
- func (c *Client) TextDocumentImplementation(ctx context.Context, uri string, position Position) ([]Location, error)
- func (c *Client) TextDocumentOpen(ctx context.Context, uri string, content string, languageID string) error
- func (c *Client) TextDocumentPrepareCallHierarchy(ctx context.Context, uri string, position Position) ([]CallHierarchyItem, error)
- func (c *Client) TextDocumentReferences(ctx context.Context, uri string, position Position) ([]Location, error)
- func (c *Client) TextDocumentSave(ctx context.Context, uri string, text string) error
- func (c *Client) WorkspaceSymbol(ctx context.Context, query string) ([]SymbolInformation, error)
- type ClientCapabilities
- type ClientInfo
- type CodeActionCapabilities
- type CodeActionKindCapabilities
- type CodeActionLiteralSupportCapabilities
- type CodeLensCapabilities
- type CodeLensOptions
- type CompletionCapabilities
- type CompletionItemCapabilities
- type CompletionItemKindCapabilities
- type CompletionListCapabilities
- type CompletionOptions
- type DefinitionCapabilities
- type DidChangeTextDocumentParams
- type DidCloseTextDocumentParams
- type DidOpenTextDocumentParams
- type DidSaveTextDocumentParams
- type DocumentLinkOptions
- type DocumentSymbol
- type DocumentSymbolCapabilities
- type DocumentSymbolParams
- type FileOperationCapabilities
- type FormattingCapabilities
- type Hover
- type HoverCapabilities
- type ImplementationCapabilities
- type InitializeParams
- type InitializeResult
- type Location
- type LocationLink
- type NotificationHandler
- type OnTypeFormattingCapabilities
- type Position
- type RPCError
- type RPCMessage
- type Range
- type RangeFormattingCapabilities
- type ReferenceCapabilities
- type ReferenceContext
- type ReferenceParams
- type RenameCapabilities
- type SelectionRangeCapabilities
- type ServerCapabilities
- func (s *ServerCapabilities) IsCallHierarchyProvider() bool
- func (s *ServerCapabilities) IsDefinitionProvider() bool
- func (s *ServerCapabilities) IsDocumentSymbolProvider() bool
- func (s *ServerCapabilities) IsHoverProvider() bool
- func (s *ServerCapabilities) IsImplementationProvider() bool
- func (s *ServerCapabilities) IsReferencesProvider() bool
- func (s *ServerCapabilities) IsWorkspaceSymbolProvider() bool
- type ServerInfo
- type SignatureHelpOptions
- type SymbolCapabilities
- type SymbolInformation
- type SymbolKindCapabilities
- type SynchronizationCapabilities
- type TextDocumentClientCapabilities
- type TextDocumentContentChangeEvent
- type TextDocumentIdentifier
- type TextDocumentItem
- type TextDocumentPositionParams
- type TypeDefinitionCapabilities
- type VersionedTextDocumentIdentifier
- type WindowClientCapabilities
- type WorkspaceClientCapabilities
- type WorkspaceEditCapabilities
- type WorkspaceFolder
- type WorkspaceSymbolParams
Constants ¶
const ( SymbolKindFile = 1 SymbolKindModule = 2 SymbolKindNamespace = 3 SymbolKindPackage = 4 SymbolKindClass = 5 SymbolKindMethod = 6 SymbolKindProperty = 7 SymbolKindField = 8 SymbolKindConstructor = 9 SymbolKindEnum = 10 SymbolKindInterface = 11 SymbolKindConstant = 12 SymbolKindString = 13 SymbolKindNumber = 14 SymbolKindBoolean = 15 SymbolKindArray = 16 SymbolKindObject = 17 SymbolKindKey = 18 SymbolKindNull = 19 SymbolKindEnumMember = 20 SymbolKindStruct = 21 SymbolKindEvent = 22 SymbolKindOperator = 23 SymbolKindTypeParameter = 24 )
SymbolKind constants (from LSP spec)
const ( TextDocumentSyncNone = 0 TextDocumentSyncFull = 1 TextDocumentSyncIncremental = 2 )
TextDocumentSyncKind constants
const DefaultTimeout = 30 * time.Second
DefaultTimeout is the default request timeout
Variables ¶
This section is empty.
Functions ¶
func URIFromPath ¶
URIFromPath converts a file path to a file URI
Types ¶
type CallHierarchyIncomingCall ¶
type CallHierarchyIncomingCall struct {
From CallHierarchyItem `json:"from"`
FromRanges []Range `json:"fromRanges"`
}
CallHierarchyIncomingCall represents an incoming call
type CallHierarchyIncomingCallsParams ¶
type CallHierarchyIncomingCallsParams struct {
Item CallHierarchyItem `json:"item"`
}
CallHierarchyIncomingCallsParams params for incoming calls
type CallHierarchyItem ¶
type CallHierarchyItem struct {
Name string `json:"name"`
Kind int `json:"kind"`
URI string `json:"uri"`
Range Range `json:"range"`
SelectionRange Range `json:"selectionRange"`
Detail string `json:"detail,omitempty"`
}
CallHierarchyItem represents a call hierarchy item
type CallHierarchyOutgoingCall ¶
type CallHierarchyOutgoingCall struct {
To CallHierarchyItem `json:"to"`
FromRanges []Range `json:"fromRanges"`
}
CallHierarchyOutgoingCall represents an outgoing call
type CallHierarchyOutgoingCallsParams ¶
type CallHierarchyOutgoingCallsParams struct {
Item CallHierarchyItem `json:"item"`
}
CallHierarchyOutgoingCallsParams params for outgoing calls
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client represents an LSP client connection
func (*Client) CallHierarchyIncomingCalls ¶
func (c *Client) CallHierarchyIncomingCalls(ctx context.Context, item CallHierarchyItem) ([]CallHierarchyIncomingCall, error)
CallHierarchyIncomingCalls sends a callHierarchy/incomingCalls request
func (*Client) CallHierarchyOutgoingCalls ¶
func (c *Client) CallHierarchyOutgoingCalls(ctx context.Context, item CallHierarchyItem) ([]CallHierarchyOutgoingCall, error)
CallHierarchyOutgoingCalls sends a callHierarchy/outgoingCalls request
func (*Client) ConnectProcess ¶
ConnectProcess connects to an LSP server via an existing process
func (*Client) Initialize ¶
Initialize initializes the LSP server
func (*Client) RegisterNotification ¶
func (c *Client) RegisterNotification(method string, handler NotificationHandler)
RegisterNotification registers a handler for a notification
func (*Client) Request ¶
func (c *Client) Request(ctx context.Context, method string, params interface{}, result interface{}) error
Request sends a request and waits for response
func (*Client) RequestWithTimeout ¶
func (c *Client) RequestWithTimeout(ctx context.Context, method string, params interface{}, result interface{}, timeout time.Duration) error
RequestWithTimeout sends a request with a timeout
func (*Client) TextDocumentChange ¶
func (c *Client) TextDocumentChange(ctx context.Context, uri string, content string, version int) error
TextDocumentChange sends changes to the LSP server
func (*Client) TextDocumentClose ¶
TextDocumentClose closes a document
func (*Client) TextDocumentDefinition ¶
func (c *Client) TextDocumentDefinition(ctx context.Context, uri string, position Position) ([]Location, error)
TextDocumentDefinitions sends a textDocument/definition request
func (*Client) TextDocumentDocumentSymbol ¶
func (c *Client) TextDocumentDocumentSymbol(ctx context.Context, uri string) ([]DocumentSymbol, error)
TextDocumentDocumentSymbol sends a textDocument/documentSymbol request
func (*Client) TextDocumentHover ¶
func (c *Client) TextDocumentHover(ctx context.Context, uri string, position Position) (*Hover, error)
TextDocumentHover sends a textDocument/hover request
func (*Client) TextDocumentImplementation ¶
func (c *Client) TextDocumentImplementation(ctx context.Context, uri string, position Position) ([]Location, error)
TextDocumentImplementation sends a textDocument/implementation request
func (*Client) TextDocumentOpen ¶
func (c *Client) TextDocumentOpen(ctx context.Context, uri string, content string, languageID string) error
TextDocumentOpen opens a document in the LSP server
func (*Client) TextDocumentPrepareCallHierarchy ¶
func (c *Client) TextDocumentPrepareCallHierarchy(ctx context.Context, uri string, position Position) ([]CallHierarchyItem, error)
TextDocumentPrepareCallHierarchy sends a textDocument/prepareCallHierarchy request
func (*Client) TextDocumentReferences ¶
func (c *Client) TextDocumentReferences(ctx context.Context, uri string, position Position) ([]Location, error)
TextDocumentReferences sends a textDocument/references request
func (*Client) TextDocumentSave ¶
TextDocumentSave saves the document
func (*Client) WorkspaceSymbol ¶
WorkspaceSymbol sends a workspace/symbol request
type ClientCapabilities ¶
type ClientCapabilities struct {
TextDocument TextDocumentClientCapabilities `json:"textDocument,omitempty"`
Workspace *WorkspaceClientCapabilities `json:"workspace,omitempty"`
Window *WindowClientCapabilities `json:"window,omitempty"`
}
ClientCapabilities client capabilities
type ClientInfo ¶
ClientInfo client information
type CodeActionCapabilities ¶
type CodeActionCapabilities struct {
CodeActionLiteralSupport *CodeActionLiteralSupportCapabilities `json:"codeActionLiteralSupport,omitempty"`
IsDynamicRegistration bool `json:"isDynamicRegistration,omitempty"`
}
CodeActionCapabilities code action capabilities
type CodeActionKindCapabilities ¶
type CodeActionKindCapabilities struct {
ValueSet []string `json:"valueSet,omitempty"`
}
CodeActionKindCapabilities code action kind capabilities
type CodeActionLiteralSupportCapabilities ¶
type CodeActionLiteralSupportCapabilities struct {
CodeActionKind *CodeActionKindCapabilities `json:"codeActionKind,omitempty"`
}
CodeActionLiteralSupportCapabilities code action literal support capabilities
type CodeLensCapabilities ¶
type CodeLensCapabilities struct {
IsDynamicRegistration bool `json:"isDynamicRegistration,omitempty"`
}
CodeLensCapabilities code lens capabilities
type CodeLensOptions ¶
type CodeLensOptions struct {
ResolveProvider bool `json:"resolveProvider,omitempty"`
}
CodeLensOptions code lens options
type CompletionCapabilities ¶
type CompletionCapabilities struct {
CompletionItem *CompletionItemCapabilities `json:"completionItem,omitempty"`
CompletionItemKind *CompletionItemKindCapabilities `json:"completionItemKind,omitempty"`
ContextSupport bool `json:"contextSupport,omitempty"`
CompletionList *CompletionListCapabilities `json:"completionList,omitempty"`
}
CompletionCapabilities completion capabilities
type CompletionItemCapabilities ¶
type CompletionItemCapabilities struct {
SnippetSupport bool `json:"snippetSupport,omitempty"`
CommitCharactersSupport bool `json:"commitCharactersSupport,omitempty"`
DocumentationFormat []string `json:"documentationFormat,omitempty"`
DeprecatedSupport bool `json:"deprecatedSupport,omitempty"`
PreselectSupport bool `json:"preselectSupport,omitempty"`
}
CompletionItemCapabilities completion item capabilities
type CompletionItemKindCapabilities ¶
type CompletionItemKindCapabilities struct {
ValueSet []int `json:"valueSet,omitempty"`
}
CompletionItemKindCapabilities completion item kind capabilities
type CompletionListCapabilities ¶
type CompletionListCapabilities struct {
ItemDefaults []string `json:"itemDefaults,omitempty"`
}
CompletionListCapabilities completion list capabilities
type CompletionOptions ¶
type CompletionOptions struct {
ResolveProvider bool `json:"resolveProvider,omitempty"`
TriggerCharacters []string `json:"triggerCharacters,omitempty"`
}
CompletionOptions completion options
type DefinitionCapabilities ¶
type DefinitionCapabilities struct {
LinkSupport bool `json:"linkSupport,omitempty"`
}
DefinitionCapabilities definition capabilities
type DidChangeTextDocumentParams ¶
type DidChangeTextDocumentParams struct {
TextDocument VersionedTextDocumentIdentifier `json:"textDocument"`
ContentChanges []TextDocumentContentChangeEvent `json:"contentChanges"`
}
DidChangeTextDocumentParams params for didChange notification
type DidCloseTextDocumentParams ¶
type DidCloseTextDocumentParams struct {
TextDocument TextDocumentIdentifier `json:"textDocument"`
}
DidCloseTextDocumentParams params for didClose notification
type DidOpenTextDocumentParams ¶
type DidOpenTextDocumentParams struct {
TextDocument TextDocumentItem `json:"textDocument"`
}
DidOpenTextDocumentParams params for didOpen notification
type DidSaveTextDocumentParams ¶
type DidSaveTextDocumentParams struct {
TextDocument TextDocumentIdentifier `json:"textDocument"`
Text *string `json:"text,omitempty"`
}
DidSaveTextDocumentParams params for didSave notification
type DocumentLinkOptions ¶
type DocumentLinkOptions struct {
ResolveProvider bool `json:"resolveProvider,omitempty"`
}
DocumentLinkOptions document link options
type DocumentSymbol ¶
type DocumentSymbol struct {
Name string `json:"name"`
Detail string `json:"detail,omitempty"`
Kind int `json:"kind"`
Range Range `json:"range"`
SelectionRange Range `json:"selectionRange"`
Children []DocumentSymbol `json:"children,omitempty"`
}
DocumentSymbol represents a document symbol
type DocumentSymbolCapabilities ¶
type DocumentSymbolCapabilities struct {
HierarchicalSymbolSupport bool `json:"hierarchicalSymbolSupport,omitempty"`
LabelSupport bool `json:"labelSupport,omitempty"`
}
DocumentSymbolCapabilities document symbol capabilities
type DocumentSymbolParams ¶
type DocumentSymbolParams struct {
TextDocument TextDocumentIdentifier `json:"textDocument"`
}
DocumentSymbolParams params for document symbol requests
type FileOperationCapabilities ¶
type FileOperationCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
WillRename bool `json:"willRename,omitempty"`
}
FileOperationCapabilities file operation capabilities
type FormattingCapabilities ¶
type FormattingCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
}
FormattingCapabilities formatting capabilities
type Hover ¶
type Hover struct {
Contents interface{} `json:"contents"` // MarkupContent | string | MarkedString[]
Range *Range `json:"range,omitempty"`
}
Hover represents hover information
type HoverCapabilities ¶
type HoverCapabilities struct {
ContentFormat []string `json:"contentFormat,omitempty"`
}
HoverCapabilities hover capabilities
type ImplementationCapabilities ¶
type ImplementationCapabilities struct {
LinkSupport bool `json:"linkSupport,omitempty"`
}
ImplementationCapabilities implementation capabilities
type InitializeParams ¶
type InitializeParams struct {
ProcessID int64 `json:"processId"`
RootURI string `json:"rootUri,omitempty"`
RootPath string `json:"rootPath,omitempty"`
ClientInfo ClientInfo `json:"clientInfo"`
Capabilities ClientCapabilities `json:"capabilities"`
WorkspaceFolders []WorkspaceFolder `json:"workspaceFolders"`
Locale string `json:"locale,omitempty"`
}
InitializeParams params for initialize request
type InitializeResult ¶
type InitializeResult struct {
Capabilities ServerCapabilities `json:"capabilities"`
ServerInfo ServerInfo `json:"serverInfo,omitempty"`
}
InitializeResult result of initialize request
type LocationLink ¶
type LocationLink struct {
OriginURI string `json:"originUri,omitempty"`
OriginRange Range `json:"originSelectionRange,omitempty"`
TargetURI string `json:"targetUri"`
TargetRange Range `json:"targetSelectionRange"`
}
LocationLink represents a location link
type NotificationHandler ¶
type NotificationHandler func(params json.RawMessage)
NotificationHandler handles LSP notifications
type OnTypeFormattingCapabilities ¶
type OnTypeFormattingCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
}
OnTypeFormattingCapabilities on type formatting capabilities
type RPCError ¶
type RPCError struct {
Code int `json:"code"`
Message string `json:"message"`
Data json.RawMessage `json:"data,omitempty"`
}
RPCError represents a JSON-RPC error
type RPCMessage ¶
type RPCMessage struct {
JSONRPC string `json:"jsonrpc"`
ID interface{} `json:"id,omitempty"`
Method string `json:"method,omitempty"`
Params json.RawMessage `json:"params,omitempty"`
Result json.RawMessage `json:"result,omitempty"`
Error *RPCError `json:"error,omitempty"`
}
RPCMessage represents a JSON-RPC message
type RangeFormattingCapabilities ¶
type RangeFormattingCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
}
RangeFormattingCapabilities range formatting capabilities
type ReferenceCapabilities ¶
type ReferenceCapabilities struct {
ContextSupport bool `json:"contextSupport,omitempty"`
}
ReferenceCapabilities reference capabilities
type ReferenceContext ¶
type ReferenceContext struct {
IncludeDeclaration bool `json:"includeDeclaration"`
}
ReferenceContext context for reference requests
type ReferenceParams ¶
type ReferenceParams struct {
TextDocumentPositionParams
Context ReferenceContext `json:"context"`
}
ReferenceParams params for reference requests
type RenameCapabilities ¶
type RenameCapabilities struct {
PrepareSupport bool `json:"prepareSupport,omitempty"`
PrepareSupportDefaultBehavior string `json:"prepareSupportDefaultBehavior,omitempty"`
HonorsChangeAnnotations bool `json:"honorsChangeAnnotations,omitempty"`
}
RenameCapabilities rename capabilities
type SelectionRangeCapabilities ¶
type SelectionRangeCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
}
SelectionRangeCapabilities selection range capabilities
type ServerCapabilities ¶
type ServerCapabilities struct {
TextDocumentSync interface{} `json:"textDocumentSync,omitempty"`
HoverProvider bool `json:"hoverProvider,omitempty"`
CompletionProvider *CompletionOptions `json:"completionProvider,omitempty"`
SignatureHelpProvider *SignatureHelpOptions `json:"signatureHelpProvider,omitempty"`
DefinitionProvider bool `json:"definitionProvider,omitempty"`
TypeDefinitionProvider interface{} `json:"typeDefinitionProvider,omitempty"`
ImplementationProvider interface{} `json:"implementationProvider,omitempty"`
ReferencesProvider bool `json:"referencesProvider,omitempty"`
DocumentHighlightProvider bool `json:"documentHighlightProvider,omitempty"`
DocumentSymbolProvider bool `json:"documentSymbolProvider,omitempty"`
WorkspaceSymbolProvider interface{} `json:"workspaceSymbolProvider,omitempty"`
CodeActionProvider bool `json:"codeActionProvider,omitempty"`
CodeLensProvider *CodeLensOptions `json:"codeLensProvider,omitempty"`
DocumentFormattingProvider bool `json:"documentFormattingProvider,omitempty"`
DocumentRangeFormattingProvider bool `json:"documentRangeFormattingProvider,omitempty"`
DocumentOnTypeFormattingProvider interface{} `json:"documentOnTypeFormattingProvider,omitempty"`
RenameProvider interface{} `json:"renameProvider,omitempty"`
DocumentLinkProvider *DocumentLinkOptions `json:"documentLinkProvider,omitempty"`
ColorProvider interface{} `json:"colorProvider,omitempty"`
FoldingRangeProvider interface{} `json:"foldingRangeProvider,omitempty"`
SelectionRangeProvider interface{} `json:"selectionRangeProvider,omitempty"`
LinkedEditingRangeProvider interface{} `json:"linkedEditingRangeProvider,omitempty"`
CallHierarchyProvider bool `json:"callHierarchyProvider,omitempty"`
SemanticTokensProvider interface{} `json:"semanticTokensProvider,omitempty"`
MonikerProvider bool `json:"monikerProvider,omitempty"`
}
ServerCapabilities server capabilities
func (*ServerCapabilities) IsCallHierarchyProvider ¶
func (s *ServerCapabilities) IsCallHierarchyProvider() bool
IsCallHierarchyProvider returns true if the server supports call hierarchy
func (*ServerCapabilities) IsDefinitionProvider ¶
func (s *ServerCapabilities) IsDefinitionProvider() bool
IsDefinitionProvider returns true if the server supports definition
func (*ServerCapabilities) IsDocumentSymbolProvider ¶
func (s *ServerCapabilities) IsDocumentSymbolProvider() bool
IsDocumentSymbolProvider returns true if the server supports document symbols
func (*ServerCapabilities) IsHoverProvider ¶
func (s *ServerCapabilities) IsHoverProvider() bool
IsHoverProvider returns true if the server supports hover
func (*ServerCapabilities) IsImplementationProvider ¶
func (s *ServerCapabilities) IsImplementationProvider() bool
IsImplementationProvider returns true if the server supports implementation
func (*ServerCapabilities) IsReferencesProvider ¶
func (s *ServerCapabilities) IsReferencesProvider() bool
IsReferencesProvider returns true if the server supports references
func (*ServerCapabilities) IsWorkspaceSymbolProvider ¶
func (s *ServerCapabilities) IsWorkspaceSymbolProvider() bool
IsWorkspaceSymbolProvider returns true if the server supports workspace symbols
type ServerInfo ¶
ServerInfo server information
type SignatureHelpOptions ¶
type SignatureHelpOptions struct {
TriggerCharacters []string `json:"triggerCharacters,omitempty"`
}
SignatureHelpOptions signature help options
type SymbolCapabilities ¶
type SymbolCapabilities struct {
DynamicRegistration bool `json:"dynamicRegistration,omitempty"`
SymbolKind *SymbolKindCapabilities `json:"symbolKind,omitempty"`
}
SymbolCapabilities symbol capabilities
type SymbolInformation ¶
type SymbolInformation struct {
Name string `json:"name"`
Kind int `json:"kind"`
Location Location `json:"location"`
ContainerName string `json:"containerName,omitempty"`
}
SymbolInformation represents symbol information
type SymbolKindCapabilities ¶
type SymbolKindCapabilities struct {
ValueSet []int `json:"valueSet,omitempty"`
}
SymbolKindCapabilities symbol kind capabilities
type SynchronizationCapabilities ¶
type SynchronizationCapabilities struct {
WillSave bool `json:"willSave,omitempty"`
DidSave bool `json:"didSave,omitempty"`
WillSaveWaitUntil bool `json:"willSaveWaitUntil,omitempty"`
}
SynchronizationCapabilities synchronization capabilities
type TextDocumentClientCapabilities ¶
type TextDocumentClientCapabilities struct {
Synchronization *SynchronizationCapabilities `json:"synchronization,omitempty"`
Completion *CompletionCapabilities `json:"completion,omitempty"`
Hover *HoverCapabilities `json:"hover,omitempty"`
References *ReferenceCapabilities `json:"references,omitempty"`
Definition *DefinitionCapabilities `json:"definition,omitempty"`
TypeDefinition *TypeDefinitionCapabilities `json:"typeDefinition,omitempty"`
Implementation *ImplementationCapabilities `json:"implementation,omitempty"`
DocumentSymbol *DocumentSymbolCapabilities `json:"documentSymbol,omitempty"`
CodeAction *CodeActionCapabilities `json:"codeAction,omitempty"`
CodeLens *CodeLensCapabilities `json:"codeLens,omitempty"`
Formatting *FormattingCapabilities `json:"formatting,omitempty"`
RangeFormatting *RangeFormattingCapabilities `json:"rangeFormatting,omitempty"`
OnTypeFormatting *OnTypeFormattingCapabilities `json:"onTypeFormatting,omitempty"`
Rename *RenameCapabilities `json:"rename,omitempty"`
SelectionRange *SelectionRangeCapabilities `json:"selectionRange,omitempty"`
}
TextDocumentClientCapabilities text document capabilities
type TextDocumentContentChangeEvent ¶
type TextDocumentContentChangeEvent struct {
Range *Range `json:"range,omitempty"`
Text string `json:"text"`
}
TextDocumentContentChangeEvent represents a text document change
type TextDocumentIdentifier ¶
type TextDocumentIdentifier struct {
URI string `json:"uri"`
}
TextDocumentIdentifier identifies a text document
type TextDocumentItem ¶
type TextDocumentItem struct {
URI string `json:"uri"`
LanguageID string `json:"languageId"`
Version int `json:"version"`
Text string `json:"text"`
}
TextDocumentItem identifies a text document
type TextDocumentPositionParams ¶
type TextDocumentPositionParams struct {
TextDocument TextDocumentIdentifier `json:"textDocument"`
Position Position `json:"position"`
}
TextDocumentPositionParams params for text document position requests
type TypeDefinitionCapabilities ¶
type TypeDefinitionCapabilities struct {
LinkSupport bool `json:"linkSupport,omitempty"`
}
TypeDefinitionCapabilities type definition capabilities
type VersionedTextDocumentIdentifier ¶
type VersionedTextDocumentIdentifier struct {
TextDocumentIdentifier
Version int `json:"version"`
}
VersionedTextDocumentIdentifier identifies a text document with version
type WindowClientCapabilities ¶
type WindowClientCapabilities struct {
WorkDoneProgress bool `json:"workDoneProgress,omitempty"`
}
WindowClientCapabilities window capabilities
type WorkspaceClientCapabilities ¶
type WorkspaceClientCapabilities struct {
ApplyEdit bool `json:"applyEdit,omitempty"`
WorkspaceFolders bool `json:"workspaceFolders,omitempty"`
WorkspaceEdit *WorkspaceEditCapabilities `json:"workspaceEdit,omitempty"`
FileOperations *FileOperationCapabilities `json:"fileOperations,omitempty"`
Symbol *SymbolCapabilities `json:"symbol,omitempty"`
}
WorkspaceClientCapabilities workspace capabilities
type WorkspaceEditCapabilities ¶
type WorkspaceEditCapabilities struct {
DocumentChanges bool `json:"documentChanges,omitempty"`
ResourceOperations []string `json:"resourceOperations,omitempty"`
FailureHandling string `json:"failureHandling,omitempty"`
}
WorkspaceEditCapabilities workspace edit capabilities
type WorkspaceFolder ¶
WorkspaceFolder represents a workspace folder
type WorkspaceSymbolParams ¶
type WorkspaceSymbolParams struct {
Query string `json:"query"`
}
WorkspaceSymbolParams params for workspace symbol requests