]> Cypherpunks repositories - gostls13.git/commit
go/importer: support lookup in importer.For
authorRuss Cox <rsc@golang.org>
Mon, 30 Oct 2017 15:13:27 +0000 (11:13 -0400)
committerRuss Cox <rsc@golang.org>
Tue, 31 Oct 2017 16:24:26 +0000 (16:24 +0000)
commit9aa6f80ed385f092259aa5b0623fdf826b6da75b
tree5f99f3d7ac7d38e07c586210e1ea6f56d1648e63
parent3e887ff7ea4f1e0d17a7a67e906bef9eec00ed1d
go/importer: support lookup in importer.For

The support in this CL assumes that something at a higher level than
the toolchain-specific importers is taking care of converting imports
in source code into canonical import paths before invoking the
toolchain-specific importers. That kind of "what does an import mean"
as opposed to "find me the import data for this specific path"
should be provided by higher-level layers.

That's a different layering than the default behavior but matches the
current layering in the compiler and linker and works with the metadata
planned for generation by the go command for package management.
It should also eventually allow the importer code to stop concerning
itself with source directories and vendor import translation and maybe
deprecate ImporterFrom in favor of Importer once again. But that's all
in the future. For now, just make non-nil lookups work, and test that.

Fixes #13847.
Adds #22550.

Change-Id: I048c6a384492e634988a7317942667689ae680ff
Reviewed-on: https://go-review.googlesource.com/74354
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Robert Griesemer <gri@golang.org>
src/go/importer/importer.go
src/go/importer/importer_test.go [new file with mode: 0644]
src/go/internal/gccgoimporter/gccgoinstallation_test.go
src/go/internal/gccgoimporter/importer.go
src/go/internal/gccgoimporter/importer_test.go
src/go/internal/gcimporter/gcimporter.go
src/go/internal/gcimporter/gcimporter_test.go