Modified time.IsZero() to use interface

This commit is contained in:
evalphobia 2015-11-17 16:19:23 +09:00
parent 8bf440560e
commit b9ba2ed347
1 changed files with 6 additions and 2 deletions

View File

@ -15,6 +15,10 @@ import (
"github.com/go-xorm/core"
)
type zeroable interface {
IsZero() bool
}
func isZero(k interface{}) bool {
switch k.(type) {
case int:
@ -45,8 +49,8 @@ func isZero(k interface{}) bool {
return k.(bool) == false
case string:
return k.(string) == ""
case time.Time:
return k.(time.Time).IsZero()
case zeroable:
return k.(zeroable).IsZero()
}
return false
}