(
client: Client,
requestId: RequestId,
encodeDefect: (u: unknown) => Effect.Effect<unknown, Schema.SchemaError>,
collector: Transferable.Collector["Service"] | undefined,
effect: Effect.Effect<A, Schema.SchemaError, R>,
onSuccess: (a: A) => FromServerEncoded
)
| 626 | const clients = new Map<number, Client>() |
| 627 | |
| 628 | const handleEncode = <A, R>( |
| 629 | client: Client, |
| 630 | requestId: RequestId, |
| 631 | encodeDefect: (u: unknown) => Effect.Effect<unknown, Schema.SchemaError>, |
| 632 | collector: Transferable.Collector["Service"] | undefined, |
| 633 | effect: Effect.Effect<A, Schema.SchemaError, R>, |
| 634 | onSuccess: (a: A) => FromServerEncoded |
| 635 | ) => |
| 636 | (collector ? Effect.provideService(effect, Transferable.Collector, collector) : effect).pipe( |
| 637 | Effect.flatMap((a) => send(client.id, onSuccess(a), collector && collector.clearUnsafe())), |
| 638 | Effect.catchCause((cause) => { |
| 639 | client.schemas.delete(requestId) |
| 640 | const defect = Cause.squash(Cause.map(cause, (e) => SchemaIssue.defaultFormatter(e.issue))) |
| 641 | return Effect.andThen( |
| 642 | sendRequestDefect(client, requestId, encodeDefect, defect), |
| 643 | server.write(client.id, { _tag: "Interrupt", requestId, interruptors: [] }) |
| 644 | ) |
| 645 | }) |
| 646 | ) |
| 647 | |
| 648 | const sendRequestDefect = ( |
| 649 | client: Client, |
no test coverage detected