package zoopb import ( "errors" ) func (m *Machine) FindByPackageName(name string) (*Package, error) { return m.Packages.FindByPackageName(name) } // used when you want to inforce the protobuf only has one package per name func (all *Packages) FindByPackageName(name string) (*Package, error) { var found *Package for p := range all.IterByPackage() { if name == p.Package { if found != nil { return found, errors.New("duplicate package names in protobuf") } found = p } } // log.Info("package name not found", name) return found, nil }