Cosmetic changes

This commit is contained in:
Manu Mtz-Almeida 2015-06-26 16:05:09 +02:00
parent 9e44079756
commit 9268afb15d
2 changed files with 46 additions and 44 deletions

34
gin.go
View File

@ -19,9 +19,24 @@ const Version = "v1.0rc2"
var default404Body = []byte("404 page not found") var default404Body = []byte("404 page not found")
var default405Body = []byte("405 method not allowed") var default405Body = []byte("405 method not allowed")
type HandlerFunc func(*Context)
type HandlersChain []HandlerFunc
func (c HandlersChain) Last() HandlerFunc {
length := len(c)
if length > 0 {
return c[length-1]
}
return nil
}
type ( type (
HandlerFunc func(*Context) RoutesInfo []RouteInfo
HandlersChain []HandlerFunc RouteInfo struct {
Method string
Path string
Handler string
}
// Represents the web framework, it wraps the blazing fast httprouter multiplexer and a list of global middlewares. // Represents the web framework, it wraps the blazing fast httprouter multiplexer and a list of global middlewares.
Engine struct { Engine struct {
@ -61,25 +76,10 @@ type (
HandleMethodNotAllowed bool HandleMethodNotAllowed bool
ForwardedByClientIP bool ForwardedByClientIP bool
} }
RoutesInfo []RouteInfo
RouteInfo struct {
Method string
Path string
Handler string
}
) )
var _ RoutesInterface = &Engine{} var _ RoutesInterface = &Engine{}
func (c HandlersChain) Last() HandlerFunc {
length := len(c)
if length > 0 {
return c[length-1]
}
return nil
}
// Returns a new blank Engine instance without any middleware attached. // Returns a new blank Engine instance without any middleware attached.
// The most basic configuration // The most basic configuration
func New() *Engine { func New() *Engine {

View File

@ -11,12 +11,13 @@ import (
"strings" "strings"
) )
type RoutesInterface interface { type (
RoutesInterface interface {
routesInterface routesInterface
Group(string, ...HandlerFunc) *RouterGroup Group(string, ...HandlerFunc) *RouterGroup
} }
type routesInterface interface { routesInterface interface {
Use(...HandlerFunc) routesInterface Use(...HandlerFunc) routesInterface
Handle(string, string, ...HandlerFunc) routesInterface Handle(string, string, ...HandlerFunc) routesInterface
@ -32,16 +33,17 @@ type routesInterface interface {
StaticFile(string, string) routesInterface StaticFile(string, string) routesInterface
Static(string, string) routesInterface Static(string, string) routesInterface
StaticFS(string, http.FileSystem) routesInterface StaticFS(string, http.FileSystem) routesInterface
} }
// Used internally to configure router, a RouterGroup is associated with a prefix // Used internally to configure router, a RouterGroup is associated with a prefix
// and an array of handlers (middlewares) // and an array of handlers (middlewares)
type RouterGroup struct { RouterGroup struct {
Handlers HandlersChain Handlers HandlersChain
BasePath string BasePath string
engine *Engine engine *Engine
root bool root bool
} }
)
var _ RoutesInterface = &RouterGroup{} var _ RoutesInterface = &RouterGroup{}