Documentation
¶
Overview ¶
Package labels implements a simple label system, parsing and matching selectors with sets of labels.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LabelSelector ¶
type LabelSelector struct {
Requirements []Requirement
}
LabelSelector only not named 'Selector' due to name conflict until Selector is deprecated.
func (*LabelSelector) Matches ¶
func (sg *LabelSelector) Matches(ls Labels) bool
type Labels ¶
type Labels interface { // Get returns the value for the provided label. Get(label string) (value string) }
Labels allows you to present labels independently from their storage.
type Operator ¶
type Operator int
Operator represents a key's relationship to a set of values in a Requirement. TODO: Should also represent key's existence.
type Requirement ¶
type Requirement struct {
// contains filtered or unexported fields
}
func (*Requirement) Matches ¶
func (r *Requirement) Matches(ls Labels) bool
type Selector ¶
type Selector interface { // Matches returns true if this selector matches the given set of labels. Matches(Labels) bool // Empty returns true if this selector does not restrict the selection space. Empty() bool // RequiresExactMatch allows a caller to introspect whether a given selector // requires a single specific label to be set, and if so returns the value it // requires. // TODO: expand this to be more general RequiresExactMatch(label string) (value string, found bool) // String returns a human readable string that represents this selector. String() string }
Selector represents a label selector.
func ParseSelector ¶
ParseSelector takes a string representing a selector and returns an object suitable for matching, or an error.
func SelectorFromSet ¶
SelectorFromSet returns a Selector which will match exactly the given Set. A nil Set is considered equivalent to Everything().