func (fc *FCache) ContentsFuture(index interface{}) ([]*Future, error) {
	// Lock the cache
	fc.Lock()
	defer fc.Unlock()

	// Look for the index
	idx, ok := fc.indexes[index]
	if !ok {
		return nil, ErrBadIndex
	}

	// Initialize a container for the futures
	result := make([]*Future, 0, len(idx.entries))
	for _, ent := range idx.entries {
		result = append(result, ent.makeFuture(fc))
	}

	return result, nil
}
// ContentsFuture is similar to Contents, but returns Future instances
// for all entries in the specified cache index, including pending
// entries.
ContentsFuture is similar to Contents, but returns Future instances
for all entries in the specified cache index, including pending
entries.
// ContentsFuture is similar to Contents but returns Future instances // for all entries in the specified cache index including pending // entries .
func (fc *FCache) ContentsFuture(index interface{}) ([]*Future, error) {
	fc.Lock()
	defer fc.Unlock()
	idx, ok := fc.indexes[index]
	if !ok {
		return nil, ErrBadIndex
	}
	result := make([]*Future, 0, len(idx.entries))
	for _, ent := range idx.entries {
		result = append(result, ent.makeFuture(fc))
	}
	return result, nil
}
func ( fc * FCache ) ContentsFuture ( index interface { } ) ( [ ] * Future , error ) { fc . Lock ( ) defer fc . Unlock ( ) idx , ok := fc . indexes [ index ] if ! ok { return nil , ErrBadIndex } result := make ( [ ] * Future , 0 , len ( idx . entries ) ) for _ , ent := range idx . entries { result = append ( result , ent . makeFuture ( fc ) ) } return result , nil }
ContentsFuture is similar to Contents, but returns Future instances
for all entries in the specified cache index, including pending
entries.
ContentsFuture is similar to Contents but returns Future instances for all entries in the specified cache index including pending entries .
// Lock the cache // Look for the index // Initialize a container for the futures