Move deps from _workspace/ to vendor/
godep restore pushd $GOPATH/src/github.com/appc/spec git co master popd go get go4.org/errorutil rm -rf Godeps godep save ./... git add vendor git add -f $(git ls-files --other vendor/) git co -- Godeps/LICENSES Godeps/.license_file_state Godeps/OWNERS
This commit is contained in:
54
vendor/github.com/emicklei/go-restful/curly_route.go
generated
vendored
Normal file
54
vendor/github.com/emicklei/go-restful/curly_route.go
generated
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
package restful
|
||||
|
||||
// Copyright 2013 Ernest Micklei. All rights reserved.
|
||||
// Use of this source code is governed by a license
|
||||
// that can be found in the LICENSE file.
|
||||
|
||||
// curlyRoute exits for sorting Routes by the CurlyRouter based on number of parameters and number of static path elements.
|
||||
type curlyRoute struct {
|
||||
route Route
|
||||
paramCount int
|
||||
staticCount int
|
||||
}
|
||||
|
||||
type sortableCurlyRoutes struct {
|
||||
candidates []*curlyRoute
|
||||
}
|
||||
|
||||
func (s *sortableCurlyRoutes) add(route *curlyRoute) {
|
||||
s.candidates = append(s.candidates, route)
|
||||
}
|
||||
|
||||
func (s *sortableCurlyRoutes) routes() (routes []Route) {
|
||||
for _, each := range s.candidates {
|
||||
routes = append(routes, each.route) // TODO change return type
|
||||
}
|
||||
return routes
|
||||
}
|
||||
|
||||
func (s *sortableCurlyRoutes) Len() int {
|
||||
return len(s.candidates)
|
||||
}
|
||||
func (s *sortableCurlyRoutes) Swap(i, j int) {
|
||||
s.candidates[i], s.candidates[j] = s.candidates[j], s.candidates[i]
|
||||
}
|
||||
func (s *sortableCurlyRoutes) Less(i, j int) bool {
|
||||
ci := s.candidates[i]
|
||||
cj := s.candidates[j]
|
||||
|
||||
// primary key
|
||||
if ci.staticCount < cj.staticCount {
|
||||
return true
|
||||
}
|
||||
if ci.staticCount > cj.staticCount {
|
||||
return false
|
||||
}
|
||||
// secundary key
|
||||
if ci.paramCount < cj.paramCount {
|
||||
return true
|
||||
}
|
||||
if ci.paramCount > cj.paramCount {
|
||||
return false
|
||||
}
|
||||
return ci.route.Path < cj.route.Path
|
||||
}
|
Reference in New Issue
Block a user