import "golang.org/x/tools/internal/lsp"
Package lsp implements LSP for gopls.
call_hierarchy.go code_action.go code_lens.go command.go completion.go debounce.go definition.go diagnostics.go folding_range.go format.go general.go highlight.go hover.go implementation.go link.go progress.go references.go rename.go semantic.go server.go server_gen.go signature_help.go symbols.go text_synchronization.go workspace.go workspace_symbol.go
const ( // FromDidOpen is a file modification caused by opening a file. FromDidOpen = ModificationSource(iota) // FromDidChange is a file modification caused by changing a file. FromDidChange // FromDidChangeWatchedFiles is a file modification caused by a change to a // watched file. FromDidChangeWatchedFiles // FromDidSave is a file modification caused by a file save. FromDidSave // FromDidClose is a file modification caused by closing a file. FromDidClose // FromRegenerateCgo refers to file modifications caused by regenerating // the cgo sources for the workspace. FromRegenerateCgo // FromInitialWorkspaceLoad refers to the loading of all packages in the // workspace when the view is first created. FromInitialWorkspaceLoad )
const WorkspaceLoadFailure = "Error loading workspace"
func DiagnosticWorkTitle(cause ModificationSource) string
DiagnosticWorkTitle returns the title of the diagnostic work resulting from a file change originating from the given cause.
SemMods returns the []string equivalent of the mods, for gopls semtok.
SemType returns a string equivalent of the type, for gopls semtok
SemanticModifiers to use in case there is no client.
SemanticTypes to use in case there is no client, as in the command line, or tests
ModificationSource identifies the originating cause of a file modification.
func (m ModificationSource) String() string
type Server struct {
// contains filtered or unexported fields
}
Server implements the protocol.Server interface.
NewServer creates an LSP server and binds it to handle incoming client messages on on the supplied stream.
func (s *Server) CodeAction(ctx context.Context, params *protocol.CodeActionParams) ([]protocol.CodeAction, error)
func (s *Server) CodeLens(ctx context.Context, params *protocol.CodeLensParams) ([]protocol.CodeLens, error)
func (s *Server) ColorPresentation(context.Context, *protocol.ColorPresentationParams) ([]protocol.ColorPresentation, error)
func (s *Server) Completion(ctx context.Context, params *protocol.CompletionParams) (*protocol.CompletionList, error)
func (s *Server) Declaration(context.Context, *protocol.DeclarationParams) (protocol.Declaration, error)
func (s *Server) Definition(ctx context.Context, params *protocol.DefinitionParams) (protocol.Definition, error)
func (s *Server) DidChange(ctx context.Context, params *protocol.DidChangeTextDocumentParams) error
func (s *Server) DidChangeConfiguration(ctx context.Context, _ *protocol.DidChangeConfigurationParams) error
func (s *Server) DidChangeWatchedFiles(ctx context.Context, params *protocol.DidChangeWatchedFilesParams) error
func (s *Server) DidChangeWorkspaceFolders(ctx context.Context, params *protocol.DidChangeWorkspaceFoldersParams) error
func (s *Server) DocumentColor(context.Context, *protocol.DocumentColorParams) ([]protocol.ColorInformation, error)
func (s *Server) DocumentHighlight(ctx context.Context, params *protocol.DocumentHighlightParams) ([]protocol.DocumentHighlight, error)
func (s *Server) DocumentLink(ctx context.Context, params *protocol.DocumentLinkParams) ([]protocol.DocumentLink, error)
func (s *Server) DocumentSymbol(ctx context.Context, params *protocol.DocumentSymbolParams) ([]interface{}, error)
func (s *Server) ExecuteCommand(ctx context.Context, params *protocol.ExecuteCommandParams) (interface{}, error)
func (s *Server) FoldingRange(ctx context.Context, params *protocol.FoldingRangeParams) ([]protocol.FoldingRange, error)
func (s *Server) Formatting(ctx context.Context, params *protocol.DocumentFormattingParams) ([]protocol.TextEdit, error)
func (s *Server) Implementation(ctx context.Context, params *protocol.ImplementationParams) (protocol.Definition, error)
func (s *Server) IncomingCalls(ctx context.Context, params *protocol.CallHierarchyIncomingCallsParams) ([]protocol.CallHierarchyIncomingCall, error)
func (s *Server) Initialize(ctx context.Context, params *protocol.ParamInitialize) (*protocol.InitializeResult, error)
func (s *Server) NonstandardRequest(ctx context.Context, method string, params interface{}) (interface{}, error)
func (s *Server) OnTypeFormatting(context.Context, *protocol.DocumentOnTypeFormattingParams) ([]protocol.TextEdit, error)
func (s *Server) OutgoingCalls(ctx context.Context, params *protocol.CallHierarchyOutgoingCallsParams) ([]protocol.CallHierarchyOutgoingCall, error)
func (s *Server) PrepareCallHierarchy(ctx context.Context, params *protocol.CallHierarchyPrepareParams) ([]protocol.CallHierarchyItem, error)
func (s *Server) PrepareRename(ctx context.Context, params *protocol.PrepareRenameParams) (*protocol.Range, error)
func (s *Server) RangeFormatting(context.Context, *protocol.DocumentRangeFormattingParams) ([]protocol.TextEdit, error)
func (s *Server) References(ctx context.Context, params *protocol.ReferenceParams) ([]protocol.Location, error)
func (s *Server) Rename(ctx context.Context, params *protocol.RenameParams) (*protocol.WorkspaceEdit, error)
func (s *Server) Resolve(context.Context, *protocol.CompletionItem) (*protocol.CompletionItem, error)
func (s *Server) ResolveCodeAction(context.Context, *protocol.CodeAction) (*protocol.CodeAction, error)
func (s *Server) ResolveDocumentLink(context.Context, *protocol.DocumentLink) (*protocol.DocumentLink, error)
func (s *Server) SelectionRange(context.Context, *protocol.SelectionRangeParams) ([]protocol.SelectionRange, error)
func (s *Server) SemanticTokensFull(ctx context.Context, p *protocol.SemanticTokensParams) (*protocol.SemanticTokens, error)
func (s *Server) SemanticTokensFullDelta(ctx context.Context, p *protocol.SemanticTokensDeltaParams) (interface{}, error)
func (s *Server) SemanticTokensRange(ctx context.Context, p *protocol.SemanticTokensRangeParams) (*protocol.SemanticTokens, error)
func (s *Server) SignatureHelp(ctx context.Context, params *protocol.SignatureHelpParams) (*protocol.SignatureHelp, error)
func (s *Server) Symbol(ctx context.Context, params *protocol.WorkspaceSymbolParams) ([]protocol.SymbolInformation, error)
func (s *Server) TypeDefinition(ctx context.Context, params *protocol.TypeDefinitionParams) (protocol.Definition, error)
func (s *Server) WillSaveWaitUntil(context.Context, *protocol.WillSaveTextDocumentParams) ([]protocol.TextEdit, error)
func (s *Server) WorkDoneProgressCancel(ctx context.Context, params *protocol.WorkDoneProgressCancelParams) error
Path | Synopsis |
---|---|
analysis/fillreturns | Package fillreturns defines an Analyzer that will attempt to automatically fill in a return statement that has missing values with zero value elements. |
analysis/fillstruct | Package fillstruct defines an Analyzer that automatically fills in a struct declaration with zero value elements for each field. |
analysis/nonewvars | Package nonewvars defines an Analyzer that applies suggested fixes to errors of the type "no new variables on left side of :=". |
analysis/noresultvalues | Package noresultvalues defines an Analyzer that applies suggested fixes to errors of the type "no result values expected". |
analysis/simplifycompositelit | Package simplifycompositelit defines an Analyzer that simplifies composite literals. |
analysis/simplifyrange | Package simplifyrange defines an Analyzer that simplifies range statements. |
analysis/simplifyslice | Package simplifyslice defines an Analyzer that simplifies slice statements. |
analysis/undeclaredname | Package undeclaredname defines an Analyzer that applies suggested fixes to errors of the type "undeclared name: %s". |
analysis/unusedparams | Package unusedparams defines an analyzer that checks for unused parameters of functions. |
browser | Package browser provides utilities for interacting with users' browsers. |
cache | Package cache implements the caching layer for gopls. |
cmd | Package cmd handles the gopls command line. |
cmd/test | Package cmdtest contains the test suite for the command line behavior of gopls. |
debug | Package debug exports debug information for gopls. |
debug/log | Package log provides helper methods for exporting log events to the internal/event package. |
debug/tag | Package tag provides the labels used for telemetry throughout gopls. |
diff | Package diff supports a pluggable diff algorithm. |
diff/difftest | Package difftest supplies a set of tests that will operate on any implementation of a diff algorithm as exposed by "golang.org/x/tools/internal/lsp/diff" |
diff/myers | Package myers implements the Myers diff algorithm. |
fake | Package fake provides fake implementations of a text editor, LSP client plugin, and Sandbox environment for use in tests. |
fuzzy | Package fuzzy implements a fuzzy matching algorithm. |
helper | Invoke with //go:generate helper/helper -t Server -d protocol/tsserver.go -u lsp -o server_gen.go invoke in internal/lsp |
lsprpc | Package lsprpc implements a jsonrpc2.StreamServer that may be used to serve the LSP on a jsonrpc2 channel. |
mod | Package mod provides core features related to go.mod file handling for use by Go editors and tools. |
protocol | Package protocol contains the structs that map directly to the wire format of the "Language Server Protocol". |
snippet | Package snippet implements the specification for the LSP snippet format. |
source | Package source provides core features for use by Go editors and tools. |
source/completion | Package completion provides core functionality for code completion in Go editors and tools. |
tests | Package tests exports functionality to be used across a variety of gopls tests. |
Package lsp imports 39 packages (graph) and is imported by 6 packages. Updated 2021-01-17. Refresh now. Tools for package owners.