mirror of
https://github.com/zeromicro/go-zero.git
synced 2026-05-13 18:00:00 +08:00
perf: pre-allocate all known length arrays to avoid re-scaling (#5029)
Co-authored-by: Kevin Wan <wanjunfeng@gmail.com>
This commit is contained in:
committed by
GitHub
parent
a2b98dbcf7
commit
130e1ba963
@@ -19,7 +19,7 @@ func fillAllStructs(api *spec.ApiSpec) {
|
||||
}
|
||||
|
||||
for _, group := range api.Service.Groups {
|
||||
var routes []spec.Route
|
||||
routes := make([]spec.Route, 0, len(group.Routes))
|
||||
for _, route := range group.Routes {
|
||||
route.RequestType = fillStruct("", route.RequestType, structTypes)
|
||||
route.ResponseType = fillStruct("", route.ResponseType, structTypes)
|
||||
@@ -74,7 +74,7 @@ func fillStruct(parent string, tp spec.Type, allTypes map[string]spec.DefineStru
|
||||
val.Members = members
|
||||
return val
|
||||
case spec.NestedStruct:
|
||||
var members []spec.Member
|
||||
members := make([]spec.Member, 0, len(val.Members))
|
||||
for _, member := range val.Members {
|
||||
switch memberType := member.Type.(type) {
|
||||
case spec.PointerType:
|
||||
|
||||
Reference in New Issue
Block a user