code: func (r Result) Into(obj runtime.Object) error {
  	if r.err != nil {
  		// Check whether the result has a Status object in the body and prefer that.
  		return r.Error()
  	}
  	if r.decoder == nil {
  		return fmt.Errorf("serializer for %s doesn't exist", r.contentType)
  	}
  	if len(r.body) == 0 {
  		return fmt.Errorf("0-length response with status code: %d and content type: %s",
  			r.statusCode, r.contentType)
  	}
  
  	out, _, err := r.decoder.Decode(r.body, nil, obj)
  	if err != nil || out == obj {
  		return err
  	}
  	// if a different object is returned, see if it is Status and avoid double decoding
  	// the object.
  	switch t := out.(type) {
  	case *metav1.Status:
  		// any status besides StatusSuccess is considered an error.
  		if t.Status != metav1.StatusSuccess {
  			return errors.FromObject(t)
  		}
  	}
  	return nil
  }
docs: // Into stores the result into obj, if possible. If obj is nil it is ignored.
  // If the returned object is of type Status and has .Status != StatusSuccess, the
  // additional information in Status will be used to enrich the error.