added generic types + FilterChanges
This commit is contained in:
6
each.go
6
each.go
@ -4,13 +4,13 @@ import "sync"
|
||||
|
||||
// Each consumes all values and calls f for each of them.
|
||||
// It blocks until source is closed
|
||||
func Each[T any](source <-chan T, f func(T)) {
|
||||
func Each[T any](source <-chan T, f Consumer[T]) {
|
||||
EachWithRunner(source, getDefaultRunner(), f)
|
||||
}
|
||||
|
||||
// Each consumes all values and calls f for each of them.
|
||||
// It blocks until source is closed
|
||||
func EachWithRunner[T any](source <-chan T, runner Runner, f func(T)) {
|
||||
func EachWithRunner[T any](source <-chan T, runner Runner, f Consumer[T]) {
|
||||
wg := &sync.WaitGroup{}
|
||||
|
||||
for value := range source {
|
||||
@ -27,7 +27,7 @@ func EachWithRunner[T any](source <-chan T, runner Runner, f func(T)) {
|
||||
|
||||
// EachSuccessive consumes all values and calls f for each of them.
|
||||
// It blocks until source is closed
|
||||
func EachSuccessive[T any](source <-chan T, f func(T)) {
|
||||
func EachSuccessive[T any](source <-chan T, f Consumer[T]) {
|
||||
for value := range source {
|
||||
f(value)
|
||||
}
|
||||
|
Reference in New Issue
Block a user