routing

package
v1.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 28, 2024 License: MIT Imports: 4 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetParameter

func GetParameter(c context.Context, key string) (string, bool)

func WithParameters

func WithParameters(c context.Context, parameters Parameters) context.Context

Types

type Filter added in v1.2.0

type Filter func(w http.ResponseWriter, r *http.Request, handlerFunc http.HandlerFunc)

type FilterChain added in v1.2.0

type FilterChain []Filter

func (FilterChain) Build added in v1.2.0

func (chain FilterChain) Build(handler http.HandlerFunc) http.HandlerFunc

func (FilterChain) Extend added in v1.2.0

func (chain FilterChain) Extend(chain2 FilterChain) FilterChain

type Methods

type Methods []string

func (Methods) Compare

func (methods Methods) Compare(method string) (match bool)

func (Methods) Extend

func (methods Methods) Extend(methods2 Methods) Methods

type Parameters

type Parameters map[string]string

func GetParameters

func GetParameters(c context.Context) Parameters

type Route

type Route struct {
	// contains filtered or unexported fields
}

type RouteBuilder added in v1.2.0

type RouteBuilder struct {
	// contains filtered or unexported fields
}

func Delete added in v1.1.0

func Delete(path string) RouteBuilder

func Filtering added in v1.2.0

func Filtering(filter Filter) RouteBuilder

func Get added in v1.1.0

func Get(path string) RouteBuilder

func Method

func Method(methods ...string) RouteBuilder

func NewRouteBuilder added in v1.2.0

func NewRouteBuilder() RouteBuilder

func Patch added in v1.1.0

func Patch(path string) RouteBuilder

func Path

func Path(path string) RouteBuilder

func Post added in v1.1.0

func Post(path string) RouteBuilder

func Put added in v1.1.0

func Put(path string) RouteBuilder

func (RouteBuilder) Filter added in v1.2.0

func (builder RouteBuilder) Filter(filter Filter) RouteBuilder

func (RouteBuilder) Method added in v1.2.0

func (builder RouteBuilder) Method(methods ...string) RouteBuilder

func (RouteBuilder) Path added in v1.2.0

func (builder RouteBuilder) Path(path string) RouteBuilder

type Router

type Router struct {
	// contains filtered or unexported fields
}

func NewRouter

func NewRouter(configurations ...RoutingConsumer) *Router

func (*Router) Handle

func (r *Router) Handle(routeBuilder RouteBuilder, handler http.Handler)

func (*Router) HandleFunc

func (r *Router) HandleFunc(routeBuilder RouteBuilder, handlerFunc http.HandlerFunc)

func (*Router) Route

func (r *Router) Route(matcher RouteBuilder, configurations ...RoutingConsumer) Routing

func (*Router) ServeHTTP

func (r *Router) ServeHTTP(writer http.ResponseWriter, request *http.Request)

type Routing

type Routing interface {
	HandleFunc(builder RouteBuilder, handlerFunc http.HandlerFunc)
	Handle(builder RouteBuilder, handler http.Handler)
	Route(builder RouteBuilder, configurations ...RoutingConsumer) Routing
}

type RoutingConsumer

type RoutingConsumer func(router Routing)

func DefaultNotFound

func DefaultNotFound() RoutingConsumer

type Segment

type Segment struct {
	// contains filtered or unexported fields
}

func (Segment) IsGlobalWildcard

func (seg Segment) IsGlobalWildcard() bool

func (Segment) IsParam

func (seg Segment) IsParam() (is bool, name string)

func (Segment) IsWildcard

func (seg Segment) IsWildcard() bool

func (Segment) Print

func (seg Segment) Print(params map[string]string) string

type Segments

type Segments []Segment

func NewSegments

func NewSegments(template string) (segments Segments)

func (Segments) Compare

func (segments Segments) Compare(path UriPath) (match bool, matched UriPath, params Parameters)

func (Segments) Extend

func (segments Segments) Extend(path Segments) Segments

func (Segments) Print

func (segments Segments) Print(params map[string]string) string

func (Segments) String

func (segments Segments) String() string

type UriPath

type UriPath []string

func NewUriPath

func NewUriPath(path string) UriPath

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL