aboutsummaryrefslogtreecommitdiff
path: root/refstore/files/update_visible_names.go
blob: f5792f93a53a0e670cc9de230f8e1eff767d1cab (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package files

func (executor *refUpdateExecutor) collectVisibleNames() (map[string]struct{}, error) {
	names := make(map[string]struct{})

	looseNames, err := executor.store.collectLooseRefNames()
	if err != nil {
		return nil, err
	}

	for _, name := range looseNames {
		names[name] = struct{}{}
	}

	packed, err := executor.store.readPackedRefs()
	if err != nil {
		return nil, err
	}

	for name := range packed.byName {
		if _, exists := names[name]; exists {
			continue
		}

		names[name] = struct{}{}
	}

	return names, nil
}