go/internal/lsp
Rob Findley 8e85a283cd internal/lsp: adopt bcmills' suggestion for an improved debouncer API
The debounce API becomes both more testable and more elegant when using
channels rather than callbacks to signal events, as suggested by bcmills
in CL 333349. Adopt these suggestions.

Fixes golang/go#45085

Change-Id: Ic1843f582d514af8aa109c24f5e3311536e54a60
Reviewed-on: https://go-review.googlesource.com/c/tools/+/334252
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
gopls-CI: kokoro <noreply+kokoro@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Bryan C. Mills <bcmills@google.com>
2021-07-13 16:40:23 +00:00
..
analysis internal/lsp: add support for extracting non-nested returns 2021-04-27 20:37:52 +00:00
browser all: replace all usages of os/exec with golang.org/x/sys/execabs 2021-01-19 22:25:03 +00:00
cache internal/lsp: improve package search in a couple places 2021-07-13 13:36:40 +00:00
cmd internal/lsp/lsprpc: add an AutoDialer abstraction 2021-07-12 16:16:36 +00:00
command internal/lsp/command: minor clean-up of StartDebugging description 2021-06-11 16:06:07 +00:00
debug internal/lsp/source/completion: avoid a panic in package completion 2021-05-10 23:22:37 +00:00
diff all: add copyright notices to files that are missing them 2021-01-06 17:23:47 +00:00
fake gopls/internal/regtest: add a flag to profile didChange handling 2021-07-13 12:52:46 +00:00
fuzzy
helper internal/lsp/protocol: latest version of LSP 2021-04-20 19:23:16 +00:00
lsprpc internal/lsp/lsprpc: add an AutoDialer abstraction 2021-07-12 16:16:36 +00:00
mod internal/lsp: start parsing go.work file like gopls.mod file 2021-06-24 04:20:31 +00:00
progress internal/lsp: move the progress tracker to the session 2021-06-16 01:01:29 +00:00
protocol internal/lsp/protocol: upgrade generated lsp code to beginning of July 2021-07-07 20:06:16 +00:00
regtest internal/lsp/lsprpc: add an AutoDialer abstraction 2021-07-12 16:16:36 +00:00
snippet internal/lsp/source/completion: add postfix snippet completions 2021-03-29 17:27:46 +00:00
source internal/lsp: improve package search in a couple places 2021-07-13 13:36:40 +00:00
template internal/lsp: handle out of range panic in template parsing 2021-06-08 16:06:52 +00:00
testdata internal/lsp/source: fix comment update during rename for short variable declarations 2021-07-12 21:21:15 +00:00
tests internal/lsp/source: add inferred types to generic function hover 2021-06-22 16:07:17 +00:00
README.md internal/lsp: add READMEs that describe tests, how to run tests 2020-12-03 17:03:53 +00:00
call_hierarchy.go
code_action.go internal/lsp: fix variable reuse bug in code actions 2021-07-13 14:00:16 +00:00
code_lens.go internal/lsp: switch to the new command API 2021-02-09 22:09:28 +00:00
command.go internal/lsp: move the progress tracker to the session 2021-06-16 01:01:29 +00:00
completion.go internal/lsp: support template files 2021-05-05 01:45:45 +00:00
completion_test.go internal/lsp/completion: move postfix completions behind option 2021-03-29 18:55:49 +00:00
debounce.go internal/lsp: adopt bcmills' suggestion for an improved debouncer API 2021-07-13 16:40:23 +00:00
debounce_test.go internal/lsp: adopt bcmills' suggestion for an improved debouncer API 2021-07-13 16:40:23 +00:00
definition.go internal/lsp: fix no definition when importShortcut is link 2021-05-10 21:56:33 +00:00
diagnostics.go internal/lsp: adopt bcmills' suggestion for an improved debouncer API 2021-07-13 16:40:23 +00:00
folding_range.go all: add copyright notices to files that are missing them 2021-01-06 17:23:47 +00:00
format.go
general.go internal/lsp: move the progress tracker to the session 2021-06-16 01:01:29 +00:00
highlight.go internal/lsp: support template files 2021-05-05 01:45:45 +00:00
hover.go internal/lsp: support template files 2021-05-05 01:45:45 +00:00
implementation.go
link.go internal/lsp: add ?utm_source=gopls to links to pkg.go.dev 2020-11-16 00:15:58 +00:00
lsp_test.go internal/lsp: move the progress tracker to the session 2021-06-16 01:01:29 +00:00
references.go internal/lsp: support template files 2021-05-05 01:45:45 +00:00
rename.go internal/lsp/source: make it an error to rename embedded fields 2021-01-26 13:52:46 +00:00
reset_golden.sh
semantic.go Revert "internal/lsp/semantic.go: repress useless messages and tighten logic" 2021-07-10 00:41:40 +00:00
server.go internal/lsp: add a setting to batch didChangeWatchedFile notifications 2021-07-08 19:55:54 +00:00
server_gen.go internal/lsp: make ShowDocument RPC available to gopls 2021-05-03 16:38:18 +00:00
signature_help.go internal/lsp: update to latest version of LSP protocol 2021-02-02 11:32:59 +00:00
symbols.go internal/lsp: support template files 2021-05-05 01:45:45 +00:00
text_synchronization.go internal/lsp: adopt bcmills' suggestion for an improved debouncer API 2021-07-13 16:40:23 +00:00
workspace.go internal/lsp: report used semantic token order in registerCapability 2021-05-19 16:08:23 +00:00
workspace_symbol.go

README.md

lsp

internal/lsp provides much of the Language Server Protocol (lsp) implementation for gopls.

Documentation for users and contributors can be found in the gopls/doc directory.