MCPcopy Index your code
hub / github.com/Effect-TS/effect / countdown

Function countdown

packages/effect/test/Effect/sequencing.test.ts:242–250  ·  view source on GitHub ↗
(n: number)

Source from the content-addressed store, hash-verified

240 it.effect("zip/parallel - paralellizes simple success values", () =>
241 Effect.gen(function*() {
242 const countdown = (n: number): Effect.Effect<number> => {
243 return n === 0
244 ? Effect.succeed(0)
245 : pipe(
246 Effect.succeed(1),
247 Effect.zip(Effect.succeed(2), { concurrent: true }),
248 Effect.flatMap((tuple) => pipe(countdown(n - 1), Effect.map((y) => tuple[0] + tuple[1] + y)))
249 )
250 }
251 const result = yield* (countdown(50))
252 strictEqual(result, 150)
253 }))

Callers 1

sequencing.test.tsFile · 0.85

Calls 3

zipMethod · 0.65
mapMethod · 0.65
pipeFunction · 0.50

Tested by

no test coverage detected