go/internal/gcimporter
Alan Donovan 2b29c66d7e internal/gcimporter: API for shallow export data
This change adds an internal API for marshalling and
unmarshalling a types.Package to "shallow" export data,
which does not index packages other than the main one.
The import function accepts a function that loads symbols
on demand (e.g. by recursively reading export data for
indirect dependencies).

The CL includes a test that the entire standard
library can be type-checked using shallow data.

Also:
- break dependency on go/ast.
- narrow the name and type of qualifiedObject.
- add (test) dependency on errgroup, and tidy go.mod.

Change-Id: I92d31efd343cf5dd6fca6d7b918a23749e2d1e83
Reviewed-on: https://go-review.googlesource.com/c/tools/+/447737
Run-TryBot: Alan Donovan <adonovan@google.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
gopls-CI: kokoro <noreply+kokoro@google.com>
Reviewed-by: Robert Findley <rfindley@google.com>
2022-11-04 16:27:25 +00:00
..
testdata
bexport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
bexport_test.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
bimport.go
exportdata.go
gcimporter.go
gcimporter_test.go
iexport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
iexport_common_test.go
iexport_go118_test.go
iexport_test.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
iimport.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
israce_test.go
newInterface10.go
newInterface11.go
shallow_test.go internal/gcimporter: API for shallow export data 2022-11-04 16:27:25 +00:00
stdlib_test.go
support_go117.go
support_go118.go
unified_no.go
unified_yes.go
ureader_no.go
ureader_yes.go