summaryrefslogtreecommitdiff
path: root/router.go
diff options
context:
space:
mode:
authortjpcc <tjp@ctrl-c.club>2023-02-15 16:44:29 -0700
committertjpcc <tjp@ctrl-c.club>2023-02-15 16:44:29 -0700
commit46ad450327111b9d28b592658d75ef57da498298 (patch)
tree2b837bac9ae36d5a34dda06ba745850da216257d /router.go
parentbc96af40db6104580c22086c8db7c8119a404257 (diff)
Switch Handler to an interface.
HandlerFunc is much better as a function returning a Handler, rather than a newtype for the function type itself. This way there is no confusion creating a type-inferenced variable with HandlerFunc(func(... and then using a HandlerFunc where a Handler is expected. Much better to only have one public type.
Diffstat (limited to 'router.go')
-rw-r--r--router.go4
1 files changed, 2 insertions, 2 deletions
diff --git a/router.go b/router.go
index 41a3a04..71fd086 100644
--- a/router.go
+++ b/router.go
@@ -50,10 +50,10 @@ func (r Router) Handler(ctx context.Context, request *Request) *Response {
return nil
}
- return handler(context.WithValue(ctx, routeParamsKey, params), request)
+ return handler.Handle(context.WithValue(ctx, routeParamsKey, params), request)
}
-// Match returns the matched handler and captured path parameters, or nils.
+// Match returns the matched handler and captured path parameters, or (nil, nil).
//
// The returned handlers will be wrapped with any middleware attached to the router.
func (r Router) Match(request *Request) (Handler, map[string]string) {