MCPcopy
hub / github.com/livebud/bud / loadControllerRoute

Method loadControllerRoute

framework/controller/loader.go:118–133  ·  view source on GitHub ↗
(controllerPath string)

Source from the content-addressed store, hash-verified

116}
117
118func (l *loader) loadControllerRoute(controllerPath string) string {
119 segments := strings.Split(strings.TrimPrefix(controllerPath, "/"), "/")
120 path := new(strings.Builder)
121 for i := 0; i < len(segments); i++ {
122 if i%2 != 0 {
123 path.WriteString("/")
124 path.WriteString(":" + text.Snake(text.Singular(segments[i-1])) + "_id")
125 path.WriteString("/")
126 }
127 path.WriteString(text.Snake(segments[i]))
128 }
129 if path.Len() == 0 {
130 return "/"
131 }
132 return "/" + path.String()
133}
134
135func (l *loader) loadActions(controller *Controller, stct *parser.Struct) (actions []*Action) {
136 var usesResponse bool

Callers 1

loadControllerMethod · 0.95

Calls 4

SplitMethod · 0.80
LenMethod · 0.80
WriteStringMethod · 0.65
StringMethod · 0.65

Tested by

no test coverage detected