package sets
import "k8s.io/apimachinery/pkg/util/sets"
Package sets has generic set and specified sets. Generic set will replace specified ones over time. And specific ones are deprecated.
Index ¶
- func List[T cmp.Ordered](s Set[T]) []T
- type Byte
- func ByteKeySet[T any](theMap map[byte]T) Byte
- func NewByte(items ...byte) Byte
- func (s Byte) Clone() Byte
- func (s Byte) Delete(items ...byte) Byte
- func (s1 Byte) Difference(s2 Byte) Byte
- func (s1 Byte) Equal(s2 Byte) bool
- func (s Byte) Has(item byte) bool
- func (s Byte) HasAll(items ...byte) bool
- func (s Byte) HasAny(items ...byte) bool
- func (s Byte) Insert(items ...byte) Byte
- func (s1 Byte) Intersection(s2 Byte) Byte
- func (s1 Byte) IsSuperset(s2 Byte) bool
- func (s Byte) Len() int
- func (s Byte) List() []byte
- func (s Byte) PopAny() (byte, bool)
- func (s1 Byte) SymmetricDifference(s2 Byte) Byte
- func (s1 Byte) Union(s2 Byte) Byte
- func (s Byte) UnsortedList() []byte
- type Empty
- type Int
- func IntKeySet[T any](theMap map[int]T) Int
- func NewInt(items ...int) Int
- func (s Int) Clone() Int
- func (s Int) Delete(items ...int) Int
- func (s1 Int) Difference(s2 Int) Int
- func (s1 Int) Equal(s2 Int) bool
- func (s Int) Has(item int) bool
- func (s Int) HasAll(items ...int) bool
- func (s Int) HasAny(items ...int) bool
- func (s Int) Insert(items ...int) Int
- func (s1 Int) Intersection(s2 Int) Int
- func (s1 Int) IsSuperset(s2 Int) bool
- func (s Int) Len() int
- func (s Int) List() []int
- func (s Int) PopAny() (int, bool)
- func (s1 Int) SymmetricDifference(s2 Int) Int
- func (s1 Int) Union(s2 Int) Int
- func (s Int) UnsortedList() []int
- type Int32
- func Int32KeySet[T any](theMap map[int32]T) Int32
- func NewInt32(items ...int32) Int32
- func (s Int32) Clone() Int32
- func (s Int32) Delete(items ...int32) Int32
- func (s1 Int32) Difference(s2 Int32) Int32
- func (s1 Int32) Equal(s2 Int32) bool
- func (s Int32) Has(item int32) bool
- func (s Int32) HasAll(items ...int32) bool
- func (s Int32) HasAny(items ...int32) bool
- func (s Int32) Insert(items ...int32) Int32
- func (s1 Int32) Intersection(s2 Int32) Int32
- func (s1 Int32) IsSuperset(s2 Int32) bool
- func (s Int32) Len() int
- func (s Int32) List() []int32
- func (s Int32) PopAny() (int32, bool)
- func (s1 Int32) SymmetricDifference(s2 Int32) Int32
- func (s1 Int32) Union(s2 Int32) Int32
- func (s Int32) UnsortedList() []int32
- type Int64
- func Int64KeySet[T any](theMap map[int64]T) Int64
- func NewInt64(items ...int64) Int64
- func (s Int64) Clone() Int64
- func (s Int64) Delete(items ...int64) Int64
- func (s1 Int64) Difference(s2 Int64) Int64
- func (s1 Int64) Equal(s2 Int64) bool
- func (s Int64) Has(item int64) bool
- func (s Int64) HasAll(items ...int64) bool
- func (s Int64) HasAny(items ...int64) bool
- func (s Int64) Insert(items ...int64) Int64
- func (s1 Int64) Intersection(s2 Int64) Int64
- func (s1 Int64) IsSuperset(s2 Int64) bool
- func (s Int64) Len() int
- func (s Int64) List() []int64
- func (s Int64) PopAny() (int64, bool)
- func (s1 Int64) SymmetricDifference(s2 Int64) Int64
- func (s1 Int64) Union(s2 Int64) Int64
- func (s Int64) UnsortedList() []int64
- type Set
- func Insert[T comparable](set Set[T], items ...T) Set[T]
- func KeySet[T comparable, V any](theMap map[T]V) Set[T]
- func New[T comparable](items ...T) Set[T]
- func (s Set[T]) Clear() Set[T]
- func (s Set[T]) Clone() Set[T]
- func (s Set[T]) Delete(items ...T) Set[T]
- func (s1 Set[T]) Difference(s2 Set[T]) Set[T]
- func (s1 Set[T]) Equal(s2 Set[T]) bool
- func (s Set[T]) Has(item T) bool
- func (s Set[T]) HasAll(items ...T) bool
- func (s Set[T]) HasAny(items ...T) bool
- func (s Set[T]) Insert(items ...T) Set[T]
- func (s1 Set[T]) Intersection(s2 Set[T]) Set[T]
- func (s1 Set[T]) IsSuperset(s2 Set[T]) bool
- func (s Set[T]) Len() int
- func (s Set[T]) PopAny() (T, bool)
- func (s1 Set[T]) SymmetricDifference(s2 Set[T]) Set[T]
- func (s1 Set[T]) Union(s2 Set[T]) Set[T]
- func (s Set[T]) UnsortedList() []T
- type String
- func NewString(items ...string) String
- func StringKeySet[T any](theMap map[string]T) String
- func (s String) Clone() String
- func (s String) Delete(items ...string) String
- func (s1 String) Difference(s2 String) String
- func (s1 String) Equal(s2 String) bool
- func (s String) Has(item string) bool
- func (s String) HasAll(items ...string) bool
- func (s String) HasAny(items ...string) bool
- func (s String) Insert(items ...string) String
- func (s1 String) Intersection(s2 String) String
- func (s1 String) IsSuperset(s2 String) bool
- func (s String) Len() int
- func (s String) List() []string
- func (s String) PopAny() (string, bool)
- func (s1 String) SymmetricDifference(s2 String) String
- func (s1 String) Union(s2 String) String
- func (s String) UnsortedList() []string
Functions ¶
func List ¶
List returns the contents as a sorted T slice.
This is a separate function and not a method because not all types supported by Generic are ordered and only those can be sorted.
Types ¶
type Byte ¶
Byte is a set of bytes, implemented via map[byte]struct{} for minimal memory consumption.
Deprecated: use generic Set instead. new ways: s1 := Set[byte]{} s2 := New[byte]()
func ByteKeySet ¶
ByteKeySet creates a Byte from a keys of a map[byte](? extends interface{}). If the value passed in is not actually a map, this will panic.
func NewByte ¶
NewByte creates a Byte from a list of values.
func (Byte) Clone ¶
Clone returns a new set which is a copy of the current set.
func (Byte) Delete ¶
Delete removes all items from the set.
func (Byte) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (Byte) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (Byte) Has ¶
Has returns true if and only if item is contained in the set.
func (Byte) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (Byte) HasAny ¶
HasAny returns true if any items are contained in the set.
func (Byte) Insert ¶
Insert adds items to the set.
func (Byte) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (Byte) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (Byte) Len ¶
Len returns the size of the set.
func (Byte) List ¶
List returns the contents as a sorted byte slice.
func (Byte) PopAny ¶
PopAny returns a single element from the set.
func (Byte) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (Byte) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (Byte) UnsortedList ¶
UnsortedList returns the slice with contents in random order.
type Empty ¶
type Empty struct{}
Empty is public since it is used by some internal API objects for conversions between external string arrays and internal sets, and conversion logic requires public types today.
type Int ¶
Int is a set of ints, implemented via map[int]struct{} for minimal memory consumption.
Deprecated: use generic Set instead. new ways: s1 := Set[int]{} s2 := New[int]()
func IntKeySet ¶
IntKeySet creates a Int from a keys of a map[int](? extends interface{}). If the value passed in is not actually a map, this will panic.
func NewInt ¶
NewInt creates a Int from a list of values.
func (Int) Clone ¶
Clone returns a new set which is a copy of the current set.
func (Int) Delete ¶
Delete removes all items from the set.
func (Int) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (Int) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (Int) Has ¶
Has returns true if and only if item is contained in the set.
func (Int) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (Int) HasAny ¶
HasAny returns true if any items are contained in the set.
func (Int) Insert ¶
Insert adds items to the set.
func (Int) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (Int) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (Int) Len ¶
Len returns the size of the set.
func (Int) List ¶
List returns the contents as a sorted int slice.
func (Int) PopAny ¶
PopAny returns a single element from the set.
func (Int) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (Int) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (Int) UnsortedList ¶
UnsortedList returns the slice with contents in random order.
type Int32 ¶
Int32 is a set of int32s, implemented via map[int32]struct{} for minimal memory consumption.
Deprecated: use generic Set instead. new ways: s1 := Set[int32]{} s2 := New[int32]()
func Int32KeySet ¶
Int32KeySet creates a Int32 from a keys of a map[int32](? extends interface{}). If the value passed in is not actually a map, this will panic.
func NewInt32 ¶
NewInt32 creates a Int32 from a list of values.
func (Int32) Clone ¶
Clone returns a new set which is a copy of the current set.
func (Int32) Delete ¶
Delete removes all items from the set.
func (Int32) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (Int32) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (Int32) Has ¶
Has returns true if and only if item is contained in the set.
func (Int32) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (Int32) HasAny ¶
HasAny returns true if any items are contained in the set.
func (Int32) Insert ¶
Insert adds items to the set.
func (Int32) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (Int32) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (Int32) Len ¶
Len returns the size of the set.
func (Int32) List ¶
List returns the contents as a sorted int32 slice.
func (Int32) PopAny ¶
PopAny returns a single element from the set.
func (Int32) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (Int32) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (Int32) UnsortedList ¶
UnsortedList returns the slice with contents in random order.
type Int64 ¶
Int64 is a set of int64s, implemented via map[int64]struct{} for minimal memory consumption.
Deprecated: use generic Set instead. new ways: s1 := Set[int64]{} s2 := New[int64]()
func Int64KeySet ¶
Int64KeySet creates a Int64 from a keys of a map[int64](? extends interface{}). If the value passed in is not actually a map, this will panic.
func NewInt64 ¶
NewInt64 creates a Int64 from a list of values.
func (Int64) Clone ¶
Clone returns a new set which is a copy of the current set.
func (Int64) Delete ¶
Delete removes all items from the set.
func (Int64) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (Int64) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (Int64) Has ¶
Has returns true if and only if item is contained in the set.
func (Int64) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (Int64) HasAny ¶
HasAny returns true if any items are contained in the set.
func (Int64) Insert ¶
Insert adds items to the set.
func (Int64) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (Int64) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (Int64) Len ¶
Len returns the size of the set.
func (Int64) List ¶
List returns the contents as a sorted int64 slice.
func (Int64) PopAny ¶
PopAny returns a single element from the set.
func (Int64) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (Int64) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (Int64) UnsortedList ¶
UnsortedList returns the slice with contents in random order.
type Set ¶
type Set[T comparable] map[T]Empty
Set is a set of the same type elements, implemented via map[comparable]struct{} for minimal memory consumption.
func Insert ¶
func Insert[T comparable](set Set[T], items ...T) Set[T]
func KeySet ¶
func KeySet[T comparable, V any](theMap map[T]V) Set[T]
KeySet creates a Set from a keys of a map[comparable](? extends interface{}). If the value passed in is not actually a map, this will panic.
func New ¶
func New[T comparable](items ...T) Set[T]
New creates a Set from a list of values. NOTE: type param must be explicitly instantiated if given items are empty.
func (Set[T]) Clear ¶
Clear empties the set. It is preferable to replace the set with a newly constructed set, but not all callers can do that (when there are other references to the map).
func (Set[T]) Clone ¶
Clone returns a new set which is a copy of the current set.
func (Set[T]) Delete ¶
Delete removes all items from the set.
func (Set[T]) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (Set[T]) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (Set[T]) Has ¶
Has returns true if and only if item is contained in the set.
func (Set[T]) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (Set[T]) HasAny ¶
HasAny returns true if any items are contained in the set.
func (Set[T]) Insert ¶
Insert adds items to the set.
func (Set[T]) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (Set[T]) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (Set[T]) Len ¶
Len returns the size of the set.
func (Set[T]) PopAny ¶
PopAny returns a single element from the set.
func (Set[T]) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (Set[T]) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (Set[T]) UnsortedList ¶
func (s Set[T]) UnsortedList() []T
UnsortedList returns the slice with contents in random order.
type String ¶
String is a set of strings, implemented via map[string]struct{} for minimal memory consumption.
Deprecated: use generic Set instead. new ways: s1 := Set[string]{} s2 := New[string]()
func NewString ¶
NewString creates a String from a list of values.
func StringKeySet ¶
StringKeySet creates a String from a keys of a map[string](? extends interface{}). If the value passed in is not actually a map, this will panic.
func (String) Clone ¶
Clone returns a new set which is a copy of the current set.
func (String) Delete ¶
Delete removes all items from the set.
func (String) Difference ¶
Difference returns a set of objects that are not in s2. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.Difference(s2) = {a3} s2.Difference(s1) = {a4, a5}
func (String) Equal ¶
Equal returns true if and only if s1 is equal (as a set) to s2. Two sets are equal if their membership is identical. (In practice, this means same elements, order doesn't matter)
func (String) Has ¶
Has returns true if and only if item is contained in the set.
func (String) HasAll ¶
HasAll returns true if and only if all items are contained in the set.
func (String) HasAny ¶
HasAny returns true if any items are contained in the set.
func (String) Insert ¶
Insert adds items to the set.
func (String) Intersection ¶
Intersection returns a new set which includes the item in BOTH s1 and s2 For example: s1 = {a1, a2} s2 = {a2, a3} s1.Intersection(s2) = {a2}
func (String) IsSuperset ¶
IsSuperset returns true if and only if s1 is a superset of s2.
func (String) Len ¶
Len returns the size of the set.
func (String) List ¶
List returns the contents as a sorted string slice.
func (String) PopAny ¶
PopAny returns a single element from the set.
func (String) SymmetricDifference ¶
SymmetricDifference returns a set of elements which are in either of the sets, but not in their intersection. For example: s1 = {a1, a2, a3} s2 = {a1, a2, a4, a5} s1.SymmetricDifference(s2) = {a3, a4, a5} s2.SymmetricDifference(s1) = {a3, a4, a5}
func (String) Union ¶
Union returns a new set which includes items in either s1 or s2. For example: s1 = {a1, a2} s2 = {a3, a4} s1.Union(s2) = {a1, a2, a3, a4} s2.Union(s1) = {a1, a2, a3, a4}
func (String) UnsortedList ¶
UnsortedList returns the slice with contents in random order.
Source Files ¶
byte.go doc.go empty.go int.go int32.go int64.go set.go string.go
- Version
- v0.33.0 (latest)
- Published
- Apr 11, 2025
- Platform
- linux/amd64
- Imports
- 2 packages
- Last checked
- 3 hours ago –
Tools for package owners.