MCPcopy Create free account
hub / github.com/effect-app/libs / runSide

Function runSide

repos/effect/packages/effect/src/Channel.ts:6233–6260  ·  view source on GitHub ↗
(
      side: "left" | "right",
      channel: Channel<
        OutElem | OutElem1,
        OutErr | OutErr1,
        OutDone | OutDone1,
        InElem & InElem1,
        InErr & InErr1,
        InDone & InDone1,
        Env | Env1
      >,
      scope: Scope.Closeable
    )

Source from the content-addressed store, hash-verified

6231 Effect.forkChild
6232 )
6233
6234 doneLatch.closeUnsafe()
6235 fibers.add(fiber)
6236 }
6237 }).pipe(
6238 Effect.catchCause((cause) => {
6239 const halt = Pull.filterDone(cause)
6240 if (Result.isSuccess(halt)) {
6241 return doneLatch.whenOpen(Queue.failCause(queue, cause))
6242 }
6243 return Queue.failCause(queue, cause)
6244 }),
6245 Effect.forkIn(forkedScope)
6246 )
6247
6248 return Queue.take(queue)
6249 })
6250 )
6251)
6252
6253/**
6254 * Represents strategies for halting merged channels when one completes or fails.
6255 *
6256 * **Example** (Choosing merge halt strategies)
6257 *
6258 * ```ts import.meta.vitest
6259 * import { Channel } from "effect"
6260 *
6261 * // Different halt strategies for channel merging
6262 * const strategies: Array<Channel.HaltStrategy> = ["left", "right", "both", "either"] // => ["left", "right", "both", "either"]
6263 * ```

Callers 1

Channel.tsFile · 0.85

Calls 6

toTransformFunction · 0.85
offerMethod · 0.80
onErrorMethod · 0.80
closeMethod · 0.80
onExitFunction · 0.70
pipeMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…