1
0
mirror of https://github.com/beego/bee.git synced 2024-11-25 20:10:55 +00:00

Merge pull request #358 from sergeylanzman/patch-2

Swagger: add support time.Time and int16
This commit is contained in:
astaxie 2017-03-05 21:44:18 +08:00 committed by GitHub
commit 38f8d6fc56

View File

@ -62,7 +62,7 @@ var basicTypes = map[string]string{
"uint64": "integer:int64", "uint64": "integer:int64",
"int": "integer:int64", "int": "integer:int64",
"int8": "integer:int32", "int8": "integer:int32",
"int16:int32": "integer:int32", "int16": "integer:int32",
"int32": "integer:int32", "int32": "integer:int32",
"int64": "integer:int64", "int64": "integer:int64",
"uintptr": "integer:int64", "uintptr": "integer:int64",
@ -73,6 +73,12 @@ var basicTypes = map[string]string{
"complex128": "number:double", "complex128": "number:double",
"byte": "string:byte", "byte": "string:byte",
"rune": "string:byte", "rune": "string:byte",
// builtin golang objects
"time.Time": "string:string",
}
var stdlibObject = map[string]string{
"&{time Time}": "time.Time",
} }
func init() { func init() {
@ -876,10 +882,14 @@ func typeAnalyser(f *ast.Field) (isSlice bool, realType, swaggerType string) {
} }
return false, val, "object" return false, val, "object"
} }
if k, ok := basicTypes[fmt.Sprint(f.Type)]; ok { basicType := fmt.Sprint(f.Type)
return false, fmt.Sprint(f.Type), k if object, isStdLibObject := stdlibObject[basicType]; isStdLibObject {
basicType = object
} }
return false, fmt.Sprint(f.Type), "object" if k, ok := basicTypes[basicType]; ok {
return false, basicType, k
}
return false, basicType, "object"
} }
func isBasicType(Type string) bool { func isBasicType(Type string) bool {