( writable: LazyArg<Writable | NodeJS.WritableStream>, onError: (error: unknown) => OE, options?: FromWritableOptions )
| 17 | |
| 18 | /** @internal */ |
| 19 | export const fromWritableChannel = <IE, OE, A>( |
| 20 | writable: LazyArg<Writable | NodeJS.WritableStream>, |
| 21 | onError: (error: unknown) => OE, |
| 22 | options?: FromWritableOptions |
| 23 | ): Channel.Channel<Chunk.Chunk<never>, Chunk.Chunk<A>, IE | OE, IE, void, unknown> => |
| 24 | Channel.flatMap( |
| 25 | Effect.zip( |
| 26 | Effect.sync(() => writable()), |
| 27 | Deferred.make<void, IE | OE>() |
| 28 | ), |
| 29 | ([writable, deferred]) => |
| 30 | Channel.embedInput( |
| 31 | writableOutput(writable, deferred, onError), |
| 32 | writeInput<IE, A>( |
| 33 | writable, |
| 34 | (cause) => Deferred.failCause(deferred, cause), |
| 35 | options, |
| 36 | Deferred.complete(deferred, Effect.void) |
| 37 | ) |
| 38 | ) |
| 39 | ) |
| 40 | |
| 41 | const writableOutput = <IE, E>( |
| 42 | writable: Writable | NodeJS.WritableStream, |
no test coverage detected