4.5.1 类型检查逻辑 - 包加载器
type Importer interface {
Import(path string) (*Package, error)
}
type ImportMode int
type ImporterFrom interface {
Importer
ImportFrom(path, dir string, mode ImportMode) (*Package, error)
}type gcimports struct {
packages map[string]*types2.Package
}
func (m *gcimports) Import(path string) (*types2.Package, error) {
return m.ImportFrom(path, "" /* no vendoring */, 0)
}
func (m *gcimports) ImportFrom(path, srcDir string, mode types2.ImportMode) (*types2.Package, error) { /* 忽略方法体 */
}最后更新于