wire: fill in ProviderSet.VarName when the set is a package variable (google/go-cloud#279)

Rename ProviderSet.Name to ProviderSet.VarName.

Fixes google/go-cloud#277
This commit is contained in:
Robert van Gent
2018-08-02 14:00:17 -07:00
committed by Ross Light
parent 85deb53791
commit 3a3760180d
5 changed files with 17 additions and 16 deletions

View File

@@ -248,10 +248,10 @@ func verifyArgsUsed(set *ProviderSet, used []*providerSetSrc) []error {
}
}
if !found {
if imp.Name == "" {
if imp.VarName == "" {
errs = append(errs, errors.New("unused provider set"))
} else {
errs = append(errs, fmt.Errorf("unused provider set %q", imp.Name))
errs = append(errs, fmt.Errorf("unused provider set %q", imp.VarName))
}
}
}
@@ -429,12 +429,12 @@ func verifyAcyclic(providerMap *typeutil.Map, hasher typeutil.Hasher) []error {
func bindingConflictError(fset *token.FileSet, pos token.Pos, typ types.Type, prevSet *ProviderSet) error {
typString := types.TypeString(typ, nil)
var err error
if prevSet.Name == "" {
if prevSet.VarName == "" {
err = fmt.Errorf("multiple bindings for %s (previous binding at %v)",
typString, fset.Position(prevSet.Pos))
} else {
err = fmt.Errorf("multiple bindings for %s (previous binding in %q.%s)",
typString, prevSet.PkgPath, prevSet.Name)
typString, prevSet.PkgPath, prevSet.VarName)
}
return notePosition(fset.Position(pos), err)
}