channel

package
v0.0.0-...-4a63a45 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AllMatch

func AllMatch[T any](channel chan T, p func(T) bool) bool

func AnyMatch

func AnyMatch[T any](channel chan T, p func(T) bool) bool

func Clone

func Clone[T any](channel chan T, numClones int) []chan T

func Concat

func Concat[T any](chan1, chan2 chan T) chan T

func Count

func Count[T any](channel chan T) int64

func Distinct

func Distinct[T comparable](channel chan T) chan T

func Filter

func Filter[T any](channel chan T, p func(T) bool) chan T

func FilterWithErr

func FilterWithErr[T any](channel chan T, p func(T) (bool, error)) (chan T, chan error)

func FlatMap

func FlatMap[T, U any](channel chan T, f func(T) chan U) chan U

func FlatMapWithErr

func FlatMapWithErr[T, U any](channel chan T, f func(T) (chan U, error)) (chan U, chan error)

func Flatten

func Flatten[T any](channels chan chan T) chan T

func FoldLeft

func FoldLeft[T, U any](channel chan T, f func(u U, t T) U, u U) U

func FoldRight

func FoldRight[T, U any](channel chan T, f func(t T, u U) U, u U) U

func ForEach

func ForEach[T any](channel chan T, consumer func(T))

func FromSlice

func FromSlice[T any](slice []T) chan T

func Generate

func Generate[T any](supplier func() T) (chan T, func())

func Iterate

func Iterate[T any](seed T, hasNext func(T) bool, next func(T) T) chan T

func Join

func Join[T ~string](strings chan T, sep T) T

func JoinErrs

func JoinErrs(errs chan error) error

func Limit

func Limit[T any](channel chan T, max int64) chan T

func Map

func Map[T, U any](channel chan T, f func(T) U) chan U

func MapWithErr

func MapWithErr[T, U any](channel chan T, f func(T) (U, error)) (chan U, chan error)

func Of

func Of[T any](ts ...T) chan T

func ParallelFilter

func ParallelFilter[T any](channel chan T, p func(T) bool) chan T

func ParallelFilterWithErr

func ParallelFilterWithErr[T any](channel chan T, p func(T) (bool, error)) (chan T, chan error)

func ParallelFlatMap

func ParallelFlatMap[T, U any](channel chan T, f func(T) chan U) chan U

func ParallelFlatMapWithErr

func ParallelFlatMapWithErr[T, U any](channel chan T, f func(T) (chan U, error)) (chan U, chan error)

func ParallelFlatten

func ParallelFlatten[T any](channel chan chan T) chan T

func ParallelMap

func ParallelMap[T, U any](channel chan T, f func(T) U) chan U

func ParallelMapWithErr

func ParallelMapWithErr[T, U any](channel chan T, f func(T) (U, error)) (chan U, chan error)

func Partition

func Partition[T any](channel chan T, size int) chan chan T

func Peek

func Peek[T any](channel chan T, consumer func(T)) chan T

func Range

func Range[T constraints.Integer](startInclusive, endExclusive T) chan T

func RangeClosed

func RangeClosed[T constraints.Integer](startInclusive, endInclusive T) chan T

func Reduce

func Reduce[T any](channel chan T, op func(t1, t2 T) T, initial T) T

func Skip

func Skip[T any](channel chan T, n int64) chan T

func Sorted

func Sorted[T constraints.Ordered](channel chan T) chan T

func Stream

func Stream[T any](seq iter.Seq[T]) chan T

func Sum

func Sum[M Monad](elements chan M) M

func TakeWhile

func TakeWhile[T any](chanel chan T, p func(T) bool) chan T

func ToSlice

func ToSlice[T any](channel chan T) []T

func UnZip

func UnZip[T, U any](channel chan Pair[T, U]) (chan T, chan U)

func Zip

func Zip[T, U any](chan1 chan T, chan2 chan U) chan Pair[T, U]

Types

type Monad

type Monad interface {
	constraints.Integer | constraints.Float | constraints.Complex | ~string
}

Monad represents any type that can use the `+` operator and whose zero value is the identity element the `+` operator

type Pair

type Pair[T1, T2 any] struct {
	Fst T1
	Snd T2
}

Jump to

Keyboard shortcuts

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