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:
Ioannis Pinakoulakis
2025-08-08 19:03:25 +03:00
committed by GitHub
parent a2b98dbcf7
commit 130e1ba963
19 changed files with 29 additions and 28 deletions

View File

@@ -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: