| 4997 | return empty as Stream.Stream<number> |
| 4998 | } |
| 4999 | const go = ( |
| 5000 | min: number, |
| 5001 | max: number, |
| 5002 | chunkSize: number |
| 5003 | ): Channel.Channel<Chunk.Chunk<number>, unknown, never, unknown, unknown, unknown> => { |
| 5004 | const remaining = max - min + 1 |
| 5005 | if (remaining > chunkSize) { |
| 5006 | return pipe( |
| 5007 | core.write(Chunk.range(min, min + chunkSize - 1)), |
| 5008 | core.flatMap(() => go(min + chunkSize, max, chunkSize)) |
| 5009 | ) |
| 5010 | } |
| 5011 | return core.write(Chunk.range(min, min + remaining - 1)) |
| 5012 | } |
| 5013 | return new StreamImpl(go(min, max, chunkSize)) |
| 5014 | }) |
| 5015 | |