code: func PodToSelectableFields(pod *api.Pod) fields.Set {
  	// The purpose of allocation with a given number of elements is to reduce
  	// amount of allocations needed to create the fields.Set. If you add any
  	// field here or the number of object-meta related fields changes, this should
  	// be adjusted.
  	podSpecificFieldsSet := make(fields.Set, 9)
  	podSpecificFieldsSet["spec.nodeName"] = pod.Spec.NodeName
  	podSpecificFieldsSet["spec.restartPolicy"] = string(pod.Spec.RestartPolicy)
  	podSpecificFieldsSet["spec.schedulerName"] = string(pod.Spec.SchedulerName)
  	podSpecificFieldsSet["spec.serviceAccountName"] = string(pod.Spec.ServiceAccountName)
  	podSpecificFieldsSet["status.phase"] = string(pod.Status.Phase)
  	podSpecificFieldsSet["status.podIP"] = string(pod.Status.PodIP)
  	podSpecificFieldsSet["status.nominatedNodeName"] = string(pod.Status.NominatedNodeName)
  	return generic.AddObjectMetaFieldsSet(podSpecificFieldsSet, &pod.ObjectMeta, true)
  }
docs: // PodToSelectableFields returns a field set that represents the object
  // TODO: fields are not labels, and the validation rules for them do not apply.