Julien Schmidt пре 12 година
родитељ
комит
929dfe873a
1 измењених фајлова са 17 додато и 15 уклоњено
  1. 17 15
      utils.go

+ 17 - 15
utils.go

@@ -47,23 +47,25 @@ type NullTime struct {
 func (nt *NullTime) Scan(value interface{}) (err error) {
 	if value == nil {
 		nt.Time, nt.Valid = time.Time{}, false
-	} else {
-		switch v := value.(type) {
-		case time.Time:
-			nt.Time, nt.Valid = v, true
-		case []byte:
-			nt.Time, err = parseDateTime(string(v), time.UTC)
-			nt.Valid = (err == nil)
-		case string:
-			nt.Time, err = parseDateTime(v, time.UTC)
-			nt.Valid = (err == nil)
-		default:
-			nt.Valid = false
-			err = fmt.Errorf("Can't convert %T to time.Time", v)
-		}
+		return
 	}
 
-	return
+	switch v := value.(type) {
+	case time.Time:
+		nt.Time, nt.Valid = v, true
+		return
+	case []byte:
+		nt.Time, err = parseDateTime(string(v), time.UTC)
+		nt.Valid = (err == nil)
+		return
+	case string:
+		nt.Time, err = parseDateTime(v, time.UTC)
+		nt.Valid = (err == nil)
+		return
+	}
+
+	nt.Valid = false
+	return fmt.Errorf("Can't convert %T to time.Time", value)
 }
 
 // Value implements the driver Valuer interface.