( driver: Schedule.ScheduleDriver<Out, In, Env>, input: Chunk.Chunk<In>, acc: Chunk.Chunk<Out> )
| 913 | ) |
| 914 | } |
| 915 | const runCollectLoop = <Env, In, Out>( |
| 916 | driver: Schedule.ScheduleDriver<Out, In, Env>, |
| 917 | input: Chunk.Chunk<In>, |
| 918 | acc: Chunk.Chunk<Out> |
| 919 | ): Effect.Effect<Chunk.Chunk<Out>, never, Env> => { |
| 920 | if (!Chunk.isNonEmpty(input)) { |
| 921 | return Effect.succeed(acc) |
| 922 | } |
| 923 | const head = Chunk.headNonEmpty(input) |
| 924 | const tail = Chunk.tailNonEmpty(input) |
| 925 | return driver.next(head).pipe( |
| 926 | Effect.matchEffect({ |
| 927 | onFailure: () => |
| 928 | driver.last.pipe( |
| 929 | Effect.match({ |
| 930 | onFailure: () => acc, |
| 931 | onSuccess: (b) => Chunk.append(acc, b) |
| 932 | }) |
| 933 | ), |
| 934 | onSuccess: (b) => runCollectLoop(driver, tail, acc.pipe(Chunk.append(b))) |
| 935 | }) |
| 936 | ) |
| 937 | } |
| 938 | const runManually = <Env, In, Out>( |
| 939 | schedule: Schedule.Schedule<Out, In, Env>, |
| 940 | inputs: Iterable< |
no test coverage detected