فهرست منبع

update error(err) to err (#1416)

the pull request update `return error(err)` to `return err`, and remove `kindOfData`.
田欧 7 سال پیش
والد
کامیت
cdd02fa9d6
2فایلهای تغییر یافته به همراه10 افزوده شده و 14 حذف شده
  1. 2 3
      binding/binding.go
  2. 8 11
      binding/default_validator.go

+ 2 - 3
binding/binding.go

@@ -4,10 +4,9 @@
 
 package binding
 
-import (
-	"net/http"
-)
+import "net/http"
 
+// Content-Type MIME of the most common data formats.
 const (
 	MIMEJSON              = "application/json"
 	MIMEHTML              = "text/html"

+ 8 - 11
binding/default_validator.go

@@ -18,11 +18,17 @@ type defaultValidator struct {
 
 var _ StructValidator = &defaultValidator{}
 
+// ValidateStruct receives any kind of type, but only performed struct or pointer to struct type.
 func (v *defaultValidator) ValidateStruct(obj interface{}) error {
-	if kindOfData(obj) == reflect.Struct {
+	value := reflect.ValueOf(obj)
+	valueType := value.Kind()
+	if valueType == reflect.Ptr {
+		valueType = value.Elem().Kind()
+	}
+	if valueType == reflect.Struct {
 		v.lazyinit()
 		if err := v.validate.Struct(obj); err != nil {
-			return error(err)
+			return err
 		}
 	}
 	return nil
@@ -43,12 +49,3 @@ func (v *defaultValidator) lazyinit() {
 		v.validate = validator.New(config)
 	})
 }
-
-func kindOfData(data interface{}) reflect.Kind {
-	value := reflect.ValueOf(data)
-	valueType := value.Kind()
-	if valueType == reflect.Ptr {
-		valueType = value.Elem().Kind()
-	}
-	return valueType
-}