code: func GetQuotableResources(discoveryFunc NamespacedResourcesFunc) (map[schema.GroupVersionResource]struct{}, error) {
  	possibleResources, discoveryErr := discoveryFunc()
  	if discoveryErr != nil && len(possibleResources) == 0 {
  		return nil, fmt.Errorf("failed to discover resources: %v", discoveryErr)
  	}
  	quotableResources := discovery.FilteredBy(discovery.SupportsAllVerbs{Verbs: []string{"create", "list", "watch", "delete"}}, possibleResources)
  	quotableGroupVersionResources, err := discovery.GroupVersionResources(quotableResources)
  	if err != nil {
  		return nil, fmt.Errorf("Failed to parse resources: %v", err)
  	}
  	// return the original discovery error (if any) in addition to the list
  	return quotableGroupVersionResources, discoveryErr
  }
docs: // GetQuotableResources returns all resources that the quota system should recognize.
  // It requires a resource supports the following verbs: 'create','list','delete'
  // This function may return both results and an error.  If that happens, it means that the discovery calls were only
  // partially successful.  A decision about whether to proceed or not is left to the caller.