code: func (mem *Memory) List(filter func(*rspb.Release) bool) ([]*rspb.Release, error) {
  	defer unlock(mem.rlock())
  
  	var ls []*rspb.Release
  	for _, recs := range mem.cache {
  		recs.Iter(func(_ int, rec *record) bool {
  			if filter(rec.rls) {
  				ls = append(ls, rec.rls)
  			}
  			return true
  		})
  	}
  	return ls, nil
  }
docs: // List returns the list of all releases such that filter(release) == true