MCPcopy
hub / github.com/anomalyco/opencode / deferredAsPromise

Function deferredAsPromise

packages/opencode/test/session/prompt.test.ts:341–357  ·  view source on GitHub ↗
(deferred: Deferred.Deferred<A>)

Source from the content-addressed store, hash-verified

339const hasBash = Effect.sync(() => Bun.which("bash") !== null)
340
341const deferredAsPromise = <A>(deferred: Deferred.Deferred<A>): PromiseLike<A> => ({
342 then: (onfulfilled, onrejected) => {
343 Effect.runFork(
344 Deferred.await(deferred).pipe(
345 Effect.match({
346 onFailure: (error) => {
347 onrejected?.(error)
348 },
349 onSuccess: (value) => {
350 onfulfilled?.(value)
351 },
352 }),
353 ),
354 )
355 return deferredAsPromise(deferred) as PromiseLike<never>
356 },
357})
358
359function defer<T>() {
360 let resolve!: (value: T | PromiseLike<T>) => void

Callers 1

prompt.test.tsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected