mirror of
https://github.com/foomo/gotsrpc.git
synced 2025-10-16 12:35:35 +00:00
add support for scalar types in rpc methods
This commit is contained in:
parent
cfd1d92efd
commit
04596aa359
18
go.go
18
go.go
@ -140,13 +140,13 @@ func extractImports(fields []*Field, fullPackageName string, aliases map[string]
|
||||
|
||||
r := strings.NewReplacer(".", "_", "/", "_", "-", "_")
|
||||
|
||||
extractImport := func(st *StructType) {
|
||||
if st.Package != fullPackageName {
|
||||
alias, ok := aliases[st.Package]
|
||||
extractImport := func(packageName string) {
|
||||
if packageName!= fullPackageName {
|
||||
alias, ok := aliases[packageName]
|
||||
if !ok {
|
||||
packageParts := strings.Split(st.Package, "/")
|
||||
packageParts := strings.Split(packageName, "/")
|
||||
beautifulAlias := packageParts[len(packageParts)-1]
|
||||
uglyAlias := r.Replace(st.Package)
|
||||
uglyAlias := r.Replace(packageName)
|
||||
alias = uglyAlias //beautifulAlias
|
||||
for _, otherAlias := range aliases {
|
||||
if otherAlias == beautifulAlias {
|
||||
@ -154,16 +154,18 @@ func extractImports(fields []*Field, fullPackageName string, aliases map[string]
|
||||
break
|
||||
}
|
||||
}
|
||||
aliases[st.Package] = alias
|
||||
aliases[packageName] = alias
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for _, f := range fields {
|
||||
if f.Value.StructType != nil {
|
||||
extractImport(f.Value.StructType)
|
||||
extractImport(f.Value.StructType.Package)
|
||||
} else if f.Value.Array != nil && f.Value.Array.Value.StructType != nil {
|
||||
extractImport(f.Value.Array.Value.StructType)
|
||||
extractImport(f.Value.Array.Value.StructType.Package)
|
||||
} else if f.Value.Scalar != nil {
|
||||
extractImport(f.Value.Scalar.Package)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user