Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Interface ¶
type Interface interface {
Add(item interface{}) Interface
Delete(item interface{}) Interface
Has(item interface{}) bool
Len() int
IsEmpty() bool
Each(fn func(item interface{}) Result.Interface) Result.Interface
ToArray() Array.Interface
Union(other Interface) Interface
Intersection(other Interface) Interface
Difference(other Interface) Interface
IsSubset(other Interface) bool
Equal(other Interface) bool
IsNull() bool
}
Interface is the public contract of an OrderedSet composite — a collection of unique items that remembers the order in which each item was first added. It is the insertion-ordered sibling of Set (and shares the Each/ToArray grammar with Array): iteration, ToArray and the set-algebra results are all emitted in a deterministic, first-insertion order rather than Go's unspecified map order.
Items are arbitrary comparable values (the OrderedSet is backed by a Go map for O(1) membership, so each item must be comparable, exactly like a Dictionary key). Membership tests return a plain bool, fallible iteration returns a Result, and every method honours the Null-Object invariant (never nil).