def cs.open
bendonnect-rpc@0.1.0.0 · src/transport/client.bend:350
import bendonnect-rpc@0.1.0.0/src/transport/client.bend as Client
import Base
import bend-kit-http@0.36.0.0/http.bend as Http
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes
import bendonnect-rpc@0.1.0.0/src/error.bend as E
import bendonnect-rpc@0.1.0.0/src/protocol.bend as P
350def cs.open(+codec: P.Codec, msgs: List<&1, Bytes.Bytes>, r: Result<&1, &1, Http.Err, Http.Up>) -> IO(Result<&1, &1, E.Error, Response>):
351 match r:
352 case Fail{e}:
353 IO.pure(Result<&1, &1, E.Error, Response>, Fail{unavailable(e)})
354 case Done{up}:
355 do IO<Result<&1, &1, E.Error, Response>>:
356 up2 : Http.Up <- upload.all(up, msgs)
357 fr : Result<&1, &1, Http.Err, Http.Stream> <- Http.upload.finish(up2)
358 cs.sent(codec, fr)