Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Chain ¶
type Chain []*Filter
func NewAcceptAllFilterChain ¶
func NewAcceptAllFilterChain() Chain
NewAcceptAllFilterChain returns a filter chain that accepts any paths/prefixes
func NewDrainFilterChain ¶
func NewDrainFilterChain() Chain
NewDrainFilterChain creates a filter chain that rejects any paths/prefixes
type CommunityFilter ¶
type CommunityFilter struct {
// contains filtered or unexported fields
}
func (*CommunityFilter) Matches ¶
func (f *CommunityFilter) Matches(coms *types.Communities) bool
type ExactMatcher ¶
type ExactMatcher struct{}
func NewExactMatcher ¶
func NewExactMatcher() *ExactMatcher
type Filter ¶
type Filter struct {
// contains filtered or unexported fields
}
func NewAcceptAllFilter ¶
func NewAcceptAllFilter() *Filter
NewAcceptAllFilter returns a filter accepting any paths/prefixes
func NewDrainFilter ¶
func NewDrainFilter() *Filter
NewDrainFilter returns a filter rejecting any paths/prefixes
type InRangeMatcher ¶
type InRangeMatcher struct {
// contains filtered or unexported fields
}
func NewInRangeMatcher ¶
func NewInRangeMatcher(min, max uint8) *InRangeMatcher
type LargeCommunityFilter ¶
type LargeCommunityFilter struct {
// contains filtered or unexported fields
}
LargeCommunityFilter represents a filter for large communities
func (*LargeCommunityFilter) Matches ¶
func (f *LargeCommunityFilter) Matches(coms *types.LargeCommunities) bool
Matches checks if a community f.community is on the filter list
type LongerMatcher ¶
type LongerMatcher struct{}
func NewLongerMatcher ¶
func NewLongerMatcher() *LongerMatcher
type OrLongerMatcher ¶
type OrLongerMatcher struct{}
func NewOrLongerMatcher ¶
func NewOrLongerMatcher() *OrLongerMatcher
type PrefixList ¶
type PrefixList struct {
// contains filtered or unexported fields
}
func NewPrefixList ¶
func NewPrefixList(pfxs ...*net.Prefix) *PrefixList
func NewPrefixListWithMatcher ¶
func NewPrefixListWithMatcher(matcher PrefixMatcher, pfxs ...*net.Prefix) *PrefixList
type PrefixMatcher ¶
type RouteFilter ¶
type RouteFilter struct {
// contains filtered or unexported fields
}
func NewRouteFilter ¶
func NewRouteFilter(pattern *net.Prefix, matcher PrefixMatcher) *RouteFilter
type Term ¶
type Term struct {
// contains filtered or unexported fields
}
Term matches a path against a list of conditions and performs actions if it matches
type TermCondition ¶
type TermCondition struct {
// contains filtered or unexported fields
}
func NewTermCondition ¶
func NewTermCondition(prefixLists []*PrefixList, routeFilters []*RouteFilter) *TermCondition
func NewTermConditionWithPrefixLists ¶
func NewTermConditionWithPrefixLists(filters ...*PrefixList) *TermCondition
func NewTermConditionWithRouteFilters ¶
func NewTermConditionWithRouteFilters(filters ...*RouteFilter) *TermCondition
Source Files ¶
Click to show internal directories.
Click to hide internal directories.