MCPcopy
hub / github.com/dosco/graphjin / appendUniqueCacheRefs

Function appendUniqueCacheRefs

core/cache_fragment.go:169–194  ·  view source on GitHub ↗
(refs []RowRef, more ...RowRef)

Source from the content-addressed store, hash-verified

167}
168
169func appendUniqueCacheRefs(refs []RowRef, more ...RowRef) []RowRef {
170 if len(more) == 0 {
171 return refs
172 }
173 seen := make(map[string]struct{}, len(refs)+len(more))
174 out := make([]RowRef, 0, len(refs)+len(more))
175 for _, ref := range refs {
176 ref = ref.Normalize()
177 key := ref.DependencyKey()
178 if _, ok := seen[key]; ok {
179 continue
180 }
181 seen[key] = struct{}{}
182 out = append(out, ref)
183 }
184 for _, ref := range more {
185 ref = ref.Normalize()
186 key := ref.DependencyKey()
187 if _, ok := seen[key]; ok {
188 continue
189 }
190 seen[key] = struct{}{}
191 out = append(out, ref)
192 }
193 return out
194}
195
196func (s *gstate) dbFragmentKey(
197 ctx context.Context,

Callers 1

Calls 2

NormalizeMethod · 0.80
DependencyKeyMethod · 0.80

Tested by

no test coverage detected