MCPcopy
hub / github.com/gofiber/fiber / toFiberHandler

Function toFiberHandler

adapter.go:13–30  ·  view source on GitHub ↗

toFiberHandler converts a supported handler type to a Fiber handler.

(handler any)

Source from the content-addressed store, hash-verified

11
12// toFiberHandler converts a supported handler type to a Fiber handler.
13func toFiberHandler(handler any) (Handler, bool) {
14 if handler == nil {
15 return nil, false
16 }
17
18 switch handler.(type) {
19 case Handler, func(Ctx): // (1)-(2) Fiber handlers
20 return adaptFiberHandler(handler)
21 case func(Req, Res) error, func(Req, Res), func(Req, Res, func() error) error, func(Req, Res, func() error), func(Req, Res, func()) error, func(Req, Res, func()), func(Req, Res, func(error)), func(Req, Res, func(error)) error, func(Req, Res, func(error) error), func(Req, Res, func(error) error) error: // (3)-(12) Express-style request handlers
22 return adaptExpressHandler(handler)
23 case http.HandlerFunc, http.Handler, func(http.ResponseWriter, *http.Request): // (13)-(15) net/http handlers
24 return adaptHTTPHandler(handler)
25 case fasthttp.RequestHandler, func(*fasthttp.RequestCtx) error: // (16)-(17) fasthttp handlers
26 return adaptFastHTTPHandler(handler)
27 default: // (18) unsupported handler type
28 return nil, false
29 }
30}
31
32func adaptFiberHandler(handler any) (Handler, bool) {
33 switch h := handler.(type) {

Calls 4

adaptFiberHandlerFunction · 0.85
adaptExpressHandlerFunction · 0.85
adaptHTTPHandlerFunction · 0.85
adaptFastHTTPHandlerFunction · 0.85