code: func IsNilResponse(rep interface{}) bool {
  	// Determine whether or not the resposne is nil. Otherwise it
  	// will no longer be possible to perform a nil equality check on the
  	// response to the interface{} rules for nil comparison. For more info
  	// please see https://golang.org/doc/faq#nil_error and
  	// https://github.com/grpc/grpc-go/issues/532.
  	if rep == nil {
  		return true
  	}
  	rv := reflect.ValueOf(rep)
  	switch rv.Kind() {
  	case reflect.Chan,
  		reflect.Func,
  		reflect.Interface,
  		reflect.Map,
  		reflect.Ptr,
  		reflect.Slice:
  		return rv.IsNil()
  	}
  	return false
  }
docs: // IsNilResponse returns a flag indicating whether or not the provided
  // response object is a nil object wrapped inside a non-nil interface.