(
client: Client,
requestId: RequestId,
encodeDefect: (u: unknown) => Effect.Effect<unknown, ParseError>,
collector: Transferable.CollectorService | undefined,
effect: Effect.Effect<A, ParseError, R>,
onSuccess: (a: A) => FromServerEncoded
)
| 586 | const clients = new Map<number, Client>() |
| 587 | |
| 588 | const handleEncode = <A, R>( |
| 589 | client: Client, |
| 590 | requestId: RequestId, |
| 591 | encodeDefect: (u: unknown) => Effect.Effect<unknown, ParseError>, |
| 592 | collector: Transferable.CollectorService | undefined, |
| 593 | effect: Effect.Effect<A, ParseError, R>, |
| 594 | onSuccess: (a: A) => FromServerEncoded |
| 595 | ) => |
| 596 | (collector ? Effect.provideService(effect, Transferable.Collector, collector) : effect).pipe( |
| 597 | Effect.flatMap((a) => send(client.id, onSuccess(a), collector && collector.unsafeClear())), |
| 598 | Effect.catchAllCause((cause) => { |
| 599 | client.schemas.delete(requestId) |
| 600 | const defect = Cause.squash(Cause.map(cause, TreeFormatter.formatErrorSync)) |
| 601 | return Effect.zipRight( |
| 602 | sendRequestDefect(client, requestId, encodeDefect, defect), |
| 603 | server.write(client.id, { _tag: "Interrupt", requestId, interruptors: [] }) |
| 604 | ) |
| 605 | }) |
| 606 | ) |
| 607 | |
| 608 | const encodeDefect = Schema.encodeSync(Schema.Defect) |
| 609 |
no test coverage detected
searching dependent graphs…