tools/internal/lsp/cache
Rebecca Stambler 3cbd95df51 internal/lsp: support a file belonging to multiple packages
This change adds supports for a package belonging to multiple files.
It requires additional packages.Loads for all of the packages to which a
file belongs (for example, if a non-test file also belongs to a package's
test variant).

For now, we re-run go/packages.Load for each file we open, regardless of
whether or not we already know about it.

This solves the issue of packages randomly belonging to a test or not.
Follow-up work needs to be done to support multiple packages in
references, rename, and diagnostics.

Fixes golang/go#32791
Fixes golang/go#30100

Change-Id: I0a5870a05825fc16cc46d405ef50c775094b0fbb
Reviewed-on: https://go-review.googlesource.com/c/tools/+/183628
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
Reviewed-by: Ian Cottrell <iancottrell@google.com>
2019-06-26 17:56:19 +00:00
..
cache.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
check.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
external.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
file.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
gofile.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
load.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
modfile.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
parse.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
pkg.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
session.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
sumfile.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
token.go internal/lsp: separate refactorings out of memoization CL 2019-06-25 16:04:30 +00:00
view.go internal/lsp: support a file belonging to multiple packages 2019-06-26 17:56:19 +00:00
watcher.go internal/lsp: add file watching and use it to trigger invalidations 2019-05-24 14:03:12 +00:00