reflect.go 649 B

1234567891011121314151617181920212223242526272829303132333435
  1. package httpexpect
  2. import (
  3. "net/http"
  4. "reflect"
  5. )
  6. func refIsNil(value interface{}) bool {
  7. defer func() {
  8. _ = recover()
  9. }()
  10. return value == nil || reflect.ValueOf(value).IsNil()
  11. }
  12. func refIsNum(value interface{}) bool {
  13. defer func() {
  14. _ = recover()
  15. }()
  16. reflect.ValueOf(value).Convert(reflect.TypeOf(float64(0))).Float()
  17. return true
  18. }
  19. func refIsHTTP(value interface{}) bool {
  20. switch value.(type) {
  21. case *http.Client, http.Client,
  22. *http.Transport, http.Transport,
  23. *http.Request, http.Request,
  24. *http.Response, http.Response,
  25. *http.Header, http.Header,
  26. *http.Cookie, http.Cookie:
  27. return true
  28. default:
  29. return false
  30. }
  31. }