code: func (w *watchCache) Get(obj interface{}) (interface{}, bool, error) {
  	object, ok := obj.(runtime.Object)
  	if !ok {
  		return nil, false, fmt.Errorf("obj does not implement runtime.Object interface: %v", obj)
  	}
  	key, err := w.keyFunc(object)
  	if err != nil {
  		return nil, false, fmt.Errorf("couldn't compute key: %v", err)
  	}
  
  	return w.store.Get(&storeElement{Key: key, Object: object})
  }
docs: // Get takes runtime.Object as a parameter. However, it returns
  // pointer to <storeElement>.