package mux
import (
"errors"
"net/http"
)
type Handler func(rw ResponseWriter, req *http.Request)
type ServeMux struct {
h Handler
}
func NewServeMux(h Handler) (*ServeMux, error) {
if h == nil {
return nil, errors.New("handler cannot be nil")
}
return &ServeMux{h: h}, nil
}
func (s *ServeMux) ServeHTTP(rw http.ResponseWriter, req *http.Request) {
s.h(&response{ResponseWriter: rw}, req)
}