MCPcopy Create free account
hub / github.com/encoder-run/operator / Next

Method Next

pkg/cache/redis/reference.go:181–203  ·  view source on GitHub ↗

Next retrieves the next reference, advancing the iterator.

()

Source from the content-addressed store, hash-verified

179
180// Next retrieves the next reference, advancing the iterator.
181func (iter *ReferenceIter) Next() (*plumbing.Reference, error) {
182 if len(iter.keys) == 0 && iter.moreData {
183 iter.fetchNextBatch()
184 }
185 if len(iter.keys) > 0 {
186 // Assume key to be the key itself and value to be something sensible
187 key := iter.keys[0]
188 iter.keys = iter.keys[1:]
189
190 data, err := iter.client.Get(ctx, key).Bytes()
191 if err != nil {
192 return nil, err
193 }
194
195 ref, err := jsonToReference(data)
196 if err != nil {
197 return nil, err
198 }
199
200 return ref, nil
201 }
202 return nil, io.EOF
203}
204
205func (iter *ReferenceIter) ForEach(cb func(obj *plumbing.Reference) error) error {
206 for {

Callers 3

ForEachMethod · 0.95
processRedisEmbeddingsFunction · 0.45

Calls 2

fetchNextBatchMethod · 0.95
jsonToReferenceFunction · 0.85

Tested by

no test coverage detected