multiindex_container

package
v0.9.2 Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2025 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MapIterator

type MapIterator[K comparable, V any] struct {
	Key K
	Map map[K]V
}

func (MapIterator[K, V]) IsValid

func (it MapIterator[K, V]) IsValid() bool

func (MapIterator[K, V]) Value

func (it MapIterator[K, V]) Value() V

type MapNonUniqueIterator added in v0.4.0

type MapNonUniqueIterator[V comparable] struct {
	// contains filtered or unexported fields
}

func NewMapNonUniqueIterator added in v0.5.0

func NewMapNonUniqueIterator[V comparable](v V) MapNonUniqueIterator[V]

func (MapNonUniqueIterator[V]) IsValid added in v0.4.0

func (iter MapNonUniqueIterator[V]) IsValid() bool

func (MapNonUniqueIterator[V]) Value added in v0.4.0

func (iter MapNonUniqueIterator[V]) Value() V

type MultiIndexByNonOrderedNonUnique added in v0.4.0

type MultiIndexByNonOrderedNonUnique[K comparable, V comparable] struct {
	Container map[K]map[V]bool
	GetIndex  func(v V) K
}

func NewNonOrderedNonUnique added in v0.4.0

func NewNonOrderedNonUnique[K comparable, V comparable](
	getIndex func(v V) K,
) *MultiIndexByNonOrderedNonUnique[K, V]

func (*MultiIndexByNonOrderedNonUnique[K, V]) All added in v0.8.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) All() iter.Seq2[K, V]

func (*MultiIndexByNonOrderedNonUnique[K, V]) Erase_Internal added in v0.6.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) Erase_Internal(it multiindex.ConstIterator[V])

func (*MultiIndexByNonOrderedNonUnique[K, V]) Find added in v0.4.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) Find(key K) (iter multiindex.ConstIterator[V])

func (*MultiIndexByNonOrderedNonUnique[K, V]) FindValue added in v0.5.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) FindValue(vwi V) (iter multiindex.ConstIterator[V])

func (*MultiIndexByNonOrderedNonUnique[K, V]) Insert added in v0.4.0

func (*MultiIndexByNonOrderedNonUnique[K, V]) Size added in v0.4.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) Size() int

func (*MultiIndexByNonOrderedNonUnique[K, V]) TraversalKV added in v0.5.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) TraversalKV(visitor func(k K, v V) bool)

func (*MultiIndexByNonOrderedNonUnique[K, V]) TraversalValue added in v0.5.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) TraversalValue(visitor func(vwi V) bool)

func (*MultiIndexByNonOrderedNonUnique[K, V]) TraversalWithKey added in v0.5.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) TraversalWithKey(k K, visitor func(v V) bool)

func (*MultiIndexByNonOrderedNonUnique[K, V]) Where added in v0.8.0

func (t *MultiIndexByNonOrderedNonUnique[K, V]) Where(k K) iter.Seq[V]

type MultiIndexByNonOrderedUnique

type MultiIndexByNonOrderedUnique[K comparable, V comparable] struct {
	Container map[K]V
	GetIndex  func(v V) K
}

func NewNonOrderedUnique

func NewNonOrderedUnique[K comparable, V comparable](
	getIndex func(v V) K,
) *MultiIndexByNonOrderedUnique[K, V]

func (*MultiIndexByNonOrderedUnique[K, V]) All added in v0.8.0

func (t *MultiIndexByNonOrderedUnique[K, V]) All() iter.Seq2[K, V]

func (*MultiIndexByNonOrderedUnique[K, V]) Erase_Internal added in v0.6.0

func (t *MultiIndexByNonOrderedUnique[K, V]) Erase_Internal(it multiindex.ConstIterator[V])

func (*MultiIndexByNonOrderedUnique[K, V]) Find

func (t *MultiIndexByNonOrderedUnique[K, V]) Find(key K) multiindex.ConstIterator[V]

func (*MultiIndexByNonOrderedUnique[K, V]) FindValue added in v0.5.0

func (t *MultiIndexByNonOrderedUnique[K, V]) FindValue(v V) multiindex.ConstIterator[V]

func (*MultiIndexByNonOrderedUnique[K, V]) Insert

func (t *MultiIndexByNonOrderedUnique[K, V]) Insert(v V) multiindex.ConstIterator[V]

func (*MultiIndexByNonOrderedUnique[K, V]) Size

func (t *MultiIndexByNonOrderedUnique[K, V]) Size() int

func (*MultiIndexByNonOrderedUnique[K, V]) TraversalKV added in v0.5.0

func (t *MultiIndexByNonOrderedUnique[K, V]) TraversalKV(visitor func(k K, v V) bool)

func (*MultiIndexByNonOrderedUnique[K, V]) TraversalValue added in v0.5.0

func (t *MultiIndexByNonOrderedUnique[K, V]) TraversalValue(visitor func(v V) bool)

func (*MultiIndexByNonOrderedUnique[K, V]) TraversalWithKey added in v0.7.0

func (t *MultiIndexByNonOrderedUnique[K, V]) TraversalWithKey(k K, visitor func(v V) bool)

func (*MultiIndexByNonOrderedUnique[K, V]) Where added in v0.8.0

func (t *MultiIndexByNonOrderedUnique[K, V]) Where(k K) iter.Seq[V]

type MultiIndexByOrderedNonUnique

type MultiIndexByOrderedNonUnique[K comparable, V comparable] struct {
	Container *rbtree.RbTree[K, V]
	GetIndex  func(v V) K
}

func NewOrderedNonUnique

func NewOrderedNonUnique[K comparator.Ordered, V comparable](
	getIndex func(v V) K,
) *MultiIndexByOrderedNonUnique[K, V]

func NewOrderedNonUniqueWithCmp added in v0.9.2

func NewOrderedNonUniqueWithCmp[K comparable, V comparable](
	getIndex func(v V) K,
	cmp func(a, b K) int,
) *MultiIndexByOrderedNonUnique[K, V]

func (*MultiIndexByOrderedNonUnique[K, V]) All added in v0.8.0

func (t *MultiIndexByOrderedNonUnique[K, V]) All() iter.Seq2[K, V]

func (*MultiIndexByOrderedNonUnique[K, V]) Erase_Internal added in v0.6.0

func (t *MultiIndexByOrderedNonUnique[K, V]) Erase_Internal(iter multiindex.ConstIterator[V])

func (*MultiIndexByOrderedNonUnique[K, V]) Find

func (t *MultiIndexByOrderedNonUnique[K, V]) Find(key K) multiindex.ConstIterator[V]

func (*MultiIndexByOrderedNonUnique[K, V]) FindValue added in v0.5.0

func (t *MultiIndexByOrderedNonUnique[K, V]) FindValue(v V) multiindex.ConstIterator[V]

func (*MultiIndexByOrderedNonUnique[K, V]) Insert

func (t *MultiIndexByOrderedNonUnique[K, V]) Insert(v V) multiindex.ConstIterator[V]

func (*MultiIndexByOrderedNonUnique[K, V]) IsRbTree added in v0.9.1

func (t *MultiIndexByOrderedNonUnique[K, V]) IsRbTree() (bool, error)

func (*MultiIndexByOrderedNonUnique[K, V]) Range added in v0.9.2

func (t *MultiIndexByOrderedNonUnique[K, V]) Range(begin, end K) iter.Seq2[K, V]

func (*MultiIndexByOrderedNonUnique[K, V]) Size

func (t *MultiIndexByOrderedNonUnique[K, V]) Size() int

func (*MultiIndexByOrderedNonUnique[K, V]) TraversalKV added in v0.5.0

func (t *MultiIndexByOrderedNonUnique[K, V]) TraversalKV(visitor func(k K, v V) bool)

func (*MultiIndexByOrderedNonUnique[K, V]) TraversalRange added in v0.9.2

func (t *MultiIndexByOrderedNonUnique[K, V]) TraversalRange(begin, end K, visitor func(k K, v V) bool)

func (*MultiIndexByOrderedNonUnique[K, V]) TraversalValue added in v0.5.0

func (t *MultiIndexByOrderedNonUnique[K, V]) TraversalValue(visitor func(v V) bool)

func (*MultiIndexByOrderedNonUnique[K, V]) TraversalWithKey added in v0.7.0

func (t *MultiIndexByOrderedNonUnique[K, V]) TraversalWithKey(k K, visitor func(v V) bool)

func (*MultiIndexByOrderedNonUnique[K, V]) Where added in v0.8.0

func (t *MultiIndexByOrderedNonUnique[K, V]) Where(k K) iter.Seq[V]

type MultiIndexByOrderedUnique

type MultiIndexByOrderedUnique[K comparable, V comparable] struct {
	MultiIndexByOrderedNonUnique[K, V]
}

func NewOrderedUnique

func NewOrderedUnique[K comparator.Ordered, V comparable](
	getIndex func(v V) K,
) *MultiIndexByOrderedUnique[K, V]

func NewOrderedUniqueWithCmp added in v0.9.2

func NewOrderedUniqueWithCmp[K comparable, V comparable](
	getIndex func(v V) K,
	cmp func(a, b K) int,
) *MultiIndexByOrderedUnique[K, V]

func (*MultiIndexByOrderedUnique[K, V]) Insert added in v0.9.2

func (t *MultiIndexByOrderedUnique[K, V]) Insert(v V) multiindex.ConstIterator[V]

func (*MultiIndexByOrderedUnique[K, V]) InsertVWI

func (t *MultiIndexByOrderedUnique[K, V]) InsertVWI(v V) multiindex.ConstIterator[V]

Jump to

Keyboard shortcuts

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