package main import ( sr "tildegit.org/tjp/sliderule" ) func routes(server Server) *sr.Router { router := &sr.Router{} for _, route := range server.Routes { addRoute(server, router, route) } return router } func addRoute(server Server, router *sr.Router, route RouteDirective) { switch server.Type { case "gopher": addGopherRoute(router, route) case "gemini": addGeminiRoute(router, route) case "spartan": addSpartanRoute(router, route) default: panic("invalid server type '" + server.Type + "'") } }