Skip to content

Commit 49e03d6

Browse files
committed
pass context to generator
1 parent 86095d1 commit 49e03d6

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ stream := pipelines.StreamSlice(ctx, data)
1313
Or from a generator function
1414

1515
```go
16-
func GenerateData() int { return rand.Intn(10) }
16+
func GenerateData(ctx context.Context) int { return rand.Intn(10) }
1717

1818
stream := pipelines.GenerateStream(ctx, GenerateData)
1919
```
@@ -57,7 +57,7 @@ const (
5757
MaxFan int = 3
5858
)
5959

60-
func GenerateData() int {
60+
func GenerateData(ctx context.Context) int {
6161
return rand.Intn(5)
6262
}
6363

pipelines.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
)
77

88
// GenerateStream takes a function that generates data and returns a channel of type T
9-
func GenerateStream[T any](ctx context.Context, fn func() T) <-chan T {
9+
func GenerateStream[T any](ctx context.Context, fn func(context.Context) T) <-chan T {
1010
stream := make(chan T)
1111

1212
go func() {
@@ -16,7 +16,7 @@ func GenerateStream[T any](ctx context.Context, fn func() T) <-chan T {
1616
select {
1717
case <-ctx.Done():
1818
return
19-
case stream <- fn():
19+
case stream <- fn(ctx):
2020
}
2121
}
2222
}()

0 commit comments

Comments
 (0)