}
func targetsWalker(tgts []string) ([]string, error) {
- tgtsMap := make(map[string]struct{}, 0)
+ tgtsMap := map[string]struct{}{}
for _, tgt := range tgts {
if err := targetsCollect(tgt, tgtsMap); err != nil {
return nil, err
}
return tgts, nil
}
+
+func collectWholeDeps(
+ tgts map[string]struct{},
+ deps map[string]map[string]struct{},
+ seen map[string]struct{},
+) {
+ for tgt := range tgts {
+ seen[tgt] = struct{}{}
+ collectWholeDeps(deps[tgt], deps, seen)
+ }
+}