1
0
mirror of https://github.com/golang/go synced 2024-11-18 18:04:46 -07:00
go/internal/lsp
Rebecca Stambler 00c44ba9c1 internal/lsp: add cache for type information
This change adds an additional cache for type information, which here is
just a *packages.Package for each package. The metadata cache maintains
the import graph, which allows us to easily determine when a package X
(and therefore any other package that imports X) should be invalidated.

Additionally, rather than performing content changes as they happen, we
queue up content changes and apply them the next time that any type
information is requested.

Updates golang/go#30309

Change-Id: Iaf569f641f84ce69b0c0d5bdabbaa85635eeb8bf
Reviewed-on: https://go-review.googlesource.com/c/tools/+/165438
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Cottrell <iancottrell@google.com>
2019-03-08 17:45:44 +00:00
..
cache internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
cmd internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
diff internal/lsp/diff: fix bug that adds extra line to files on format 2019-02-13 04:28:36 +00:00
protocol internal/lsp: implement incremental updates to document 2019-02-21 17:53:26 +00:00
source internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
testdata internal/lsp: remove handling for circular imports 2019-03-04 22:34:19 +00:00
completion.go internal/lsp: add additional tests for completion 2018-12-19 22:27:14 +00:00
diagnostics.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
format.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
imports.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
lsp110_test.go internal/lsp: add more testdata for completion and diagnostics 2018-11-20 06:06:34 +00:00
lsp_test.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
position.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
server.go internal/lsp: add cache for type information 2019-03-08 17:45:44 +00:00
signature_help.go internal/lsp: implement signature help 2018-11-13 20:09:34 +00:00