sync

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2025 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewMap

func NewMap[K comparable, V any]() *sMap[K, V]

func NewSlice

func NewSlice[T any]() *slice[T]

func NewSliceBCTS added in v0.7.14

func NewSliceBCTS[T any, RT bcts.ReadWriter[T]]() *sliceBCTS[T, RT]

Types

type Map

type Map[K comparable, V any] interface {
	Set(key K, data V)
	Get(key K) (data V, ok bool)
	GetOrInit(key K, init func() V) (data V, isNew bool)
	GetMap() map[K]V
	Delete(key K)
	CompareAndSwap(key K, n V, swap func(stored V) bool) (swapped bool)
}

type MapBCTS added in v0.7.14

type MapBCTS[BT any, T bcts.ReadWriter[BT]] struct {
	// contains filtered or unexported fields
}

func MapBCTSFromReader added in v0.7.14

func MapBCTSFromReader[BT any, T bcts.ReadWriter[BT]](r io.Reader) (*MapBCTS[BT, T], error)

func NewMapBCTS added in v0.7.14

func NewMapBCTS[BT any, T bcts.ReadWriter[BT]]() *MapBCTS[BT, T]

func (*MapBCTS[BT, T]) CompareAndSwap added in v0.7.14

func (s *MapBCTS[BT, T]) CompareAndSwap(
	key bcts.TinyString,
	n T,
	swap func(stored T) bool,
) (swapped bool)

func (*MapBCTS[BT, T]) Delete added in v0.7.14

func (s *MapBCTS[BT, T]) Delete(key bcts.TinyString)

func (*MapBCTS[BT, T]) Get added in v0.7.14

func (s *MapBCTS[BT, T]) Get(key bcts.TinyString) (data T, ok bool)

func (*MapBCTS[BT, T]) GetMapBCTS added in v0.7.14

func (s *MapBCTS[BT, T]) GetMapBCTS() (data map[bcts.TinyString]T)

func (*MapBCTS[BT, T]) GetOrInit added in v0.7.14

func (s *MapBCTS[BT, T]) GetOrInit(key bcts.TinyString, init func() T) (T, bool)

func (*MapBCTS[BT, T]) ReadBytes added in v0.7.14

func (s *MapBCTS[BT, T]) ReadBytes(r io.Reader) (err error)

func (*MapBCTS[BT, T]) Set added in v0.7.14

func (s *MapBCTS[BT, T]) Set(key bcts.TinyString, data T)

func (*MapBCTS[BT, T]) WriteBytes added in v0.7.14

func (s *MapBCTS[BT, T]) WriteBytes(w io.Writer) (err error)

type Obj

type Obj[T any] interface {
	Set(data T)
	Get() (data T)
	Swap(inn T) (out T)
}

func NewObj

func NewObj[T any]() Obj[T]

type Que

type Que[T bcts.Writer, RT bcts.ReadWriter[T]] struct {
	// contains filtered or unexported fields
}

func NewQue

func NewQue[BT bcts.Writer, T bcts.ReadWriter[BT]]() *Que[BT, T]

func QueFromReader added in v0.7.7

func QueFromReader[BT bcts.Writer, T bcts.ReadWriter[BT]](r io.Reader) (*Que[BT, T], error)

func (*Que[BT, T]) Delete

func (s *Que[BT, T]) Delete(is func(v BT) bool)

func (*Que[BT, T]) HasData

func (s *Que[BT, T]) HasData() <-chan struct{}

func (*Que[BT, T]) Peek

func (s *Que[BT, T]) Peek() (data BT, ok bool)

func (*Que[BT, T]) Pop

func (s *Que[BT, T]) Pop() (data BT, ok bool)

func (*Que[BT, T]) Push

func (s *Que[BT, T]) Push(data T)

func (*Que[BT, T]) ReadBytes added in v0.7.7

func (s *Que[BT, T]) ReadBytes(r io.Reader) (err error)

func (*Que[BT, T]) WriteBytes added in v0.7.7

func (s *Que[BT, T]) WriteBytes(w io.Writer) (err error)

type SLK

type SLK interface {
	Add(key string, timeout time.Duration)
	Get(key string) (ok bool)
	Delete(key string)
}

func NewSLK

func NewSLK() SLK

type Slice

type Slice[T any] interface {
	Add(data T)
	AddUnique(data T, eq func(v1, v2 T) bool) bool
	Set(i int, data T)
	Get(i int) (data T, ok bool)
	Len() int
	Contains(val T) int
	Slice() []T
	Delete(i int) T
	DeleteWhere(where func(v T) bool)
	Clear()
	ReadItr() itr.Iterator[T]
	WriteItr() itr.Iterator[*T]
}

type SliceBCTS added in v0.7.14

type SliceBCTS[T any, RT bcts.ReadWriter[T]] interface {
	Add(data T)
	Set(i int, data T)
	Get(i int) (data T, ok bool)
	Len() int
	Contains(val T) int
	SliceBCTS() []T
	Delete(i int) T
	Clear()
}

type Stack

type Stack[T any, RT bcts.ReadWriter[T]] struct {
	// contains filtered or unexported fields
}

func NewStack

func NewStack[T any, RT bcts.ReadWriter[T]]() *Stack[T, RT]

func (*Stack[T, RT]) Peek

func (s *Stack[T, RT]) Peek() (data RT, ok bool)

func (*Stack[T, RT]) Pop

func (s *Stack[T, RT]) Pop() (data RT, ok bool)

func (*Stack[T, RT]) Push

func (s *Stack[T, RT]) Push(data RT)

func (*Stack[T, RT]) ReadBytes added in v0.7.7

func (s *Stack[T, RT]) ReadBytes(r io.Reader) (err error)

func (*Stack[T, RT]) WriteBytes added in v0.7.7

func (s *Stack[T, RT]) WriteBytes(w io.Writer) (err error)

Jump to

Keyboard shortcuts

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