kubernetes/vendor/go.etcd.io/etcd/server/v3/mvcc/watcher_group.go

var watchBatchMaxRevs

type eventBatch

func (eb *eventBatch) add(ev mvccpb.Event) {}

type watcherBatch

func (wb watcherBatch) add(w *watcher, ev mvccpb.Event) {}

// newWatcherBatch maps watchers to their matched events. It enables quick
// events look up by watcher.
func newWatcherBatch(wg *watcherGroup, evs []mvccpb.Event) watcherBatch {}

type watcherSet

func (w watcherSet) add(wa *watcher) {}

func (w watcherSet) union(ws watcherSet) {}

func (w watcherSet) delete(wa *watcher) {}

type watcherSetByKey

func (w watcherSetByKey) add(wa *watcher) {}

func (w watcherSetByKey) delete(wa *watcher) bool {}

type watcherGroup

func newWatcherGroup() watcherGroup {}

// add puts a watcher in the group.
func (wg *watcherGroup) add(wa *watcher) {}

// contains is whether the given key has a watcher in the group.
func (wg *watcherGroup) contains(key string) bool {}

// size gives the number of unique watchers in the group.
func (wg *watcherGroup) size() int {}

// delete removes a watcher from the group.
func (wg *watcherGroup) delete(wa *watcher) bool {}

// choose selects watchers from the watcher group to update
func (wg *watcherGroup) choose(maxWatchers int, curRev, compactRev int64) (*watcherGroup, int64) {}

func (wg *watcherGroup) chooseAll(curRev, compactRev int64) int64 {}

// watcherSetByKey gets the set of watchers that receive events on the given key.
func (wg *watcherGroup) watcherSetByKey(key string) watcherSet {}