Set

package
v0.0.0-...-e175429 Latest Latest
Warning

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

Go to latest
Published: Jul 3, 2026 License: BSD-3-Clause Imports: 2 Imported by: 0

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 a Set composite — an unordered collection of unique items, the go-composites sibling of Array (with which it shares the Each/ToArray grammar). Items are arbitrary comparable values (a Set is backed by a Go map, 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).

func New

func New(items ...interface{}) Interface

New creates a Set seeded with the given items (deduplicated). Items must be comparable, since the Set is backed by a Go map.

func Null

func Null() Interface

Null returns the Null-Object Set.

Jump to

Keyboard shortcuts

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