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)

Uses (16)

Used by (1)