def one_msg

bendonnect-rpc@0.1.0.0 · src/transport/rpc.bend:190

import bendonnect-rpc@0.1.0.0/src/transport/rpc.bend as Rpc
import Base
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

190def one_msg(~Res: Data, ~dec: @+codec: P.Codec -> Bytes.Bytes -> Result<&1, &1, E.Error, Res>, +codec: P.Codec, ms: List<&1, Bytes.Bytes>) -> Result<&1, &1, E.Error, Res>:
191  match ms:
192    case Nil{}:
193      Fail{bad_response("no response message")}
194    case Con{m, rest}:
195      match rest:
196        case Nil{}:
197          dec(codec, m)
198        case Con{x, y}:
199          Fail{bad_response("more than one response message")}

Uses (6)

Used by (1)