kubernetes/staging/src/k8s.io/apiserver/pkg/storage/cacher/watch_cache_interval.go

type watchCacheInterval

type attrFunc

type indexerFunc

type indexValidator

func newCacheInterval(startIndex, endIndex int, indexer indexerFunc, indexValidator indexValidator, resourceVersion uint64, locker sync.Locker) *watchCacheInterval {}

type sortableWatchCacheEvents

func (s sortableWatchCacheEvents) Len() int {}

func (s sortableWatchCacheEvents) Less(i, j int) bool {}

func (s sortableWatchCacheEvents) Swap(i, j int) {}

// newCacheIntervalFromStore is meant to handle the case of rv=0, such that the events
// returned by Next() need to be events from a List() done on the underlying store of
// the watch cache.
// The items returned in the interval will be sorted by Key.
func newCacheIntervalFromStore(resourceVersion uint64, store storeIndexer, getAttrsFunc attrFunc, key string, matchesSingle bool) (*watchCacheInterval, error) {}

// Next returns the next item in the cache interval provided the cache
// interval is still valid. An error is returned if the interval is
// invalidated.
func (wci *watchCacheInterval) Next() (*watchCacheEvent, error) {}

func (wci *watchCacheInterval) fillBuffer() {}

const bufferSize

type watchCacheIntervalBuffer

// next returns the next event present in the interval buffer provided
// it is not empty.
func (wcib *watchCacheIntervalBuffer) next() (*watchCacheEvent, bool) {}

func (wcib *watchCacheIntervalBuffer) isFull() bool {}

func (wcib *watchCacheIntervalBuffer) isEmpty() bool {}