def describe.result
mylsm-lsm-store@0.6.0.1 · src/coordinator/ByteClient.bend:25
import mylsm-lsm-store@0.6.0.1/src/coordinator/ByteClient.bend as ByteClient
import Base
import mylsm-lsm-store@0.6.0.1/src/coordinator/Client.bend as Client
import mylsm-lsm-store@0.6.0.1/src/coordinator/Protocol.bend as Protocol
import mylsm-lsm-store@0.6.0.1/src/coordinator/OptionsCodec.bend as OptionsCodec
25def describe.result(
26 pair: Client.Session & Result<&1, &1, Client.Error, Protocol.Response>
27) -> Client.Session & Result<&1, &1, Client.Error, OptionsCodec.Decision>:
28 match pair:
29 case (session, Fail{error}): (session, Fail{error})
30 case (session, Done{Protocol.Response{_, _, _, status, payload}}):
31 match status:
32 case Protocol.Success{}: (session, Done{OptionsCodec.decode(payload)})
33 case _: (session, Fail{Client.OwnerRejected{status}})