def response.read

mylsm-lsm-store@0.6.0.1 · src/coordinator/Client.bend:214

import mylsm-lsm-store@0.6.0.1/src/coordinator/Client.bend as Client
import Base
import mylsm-lsm-store@0.6.0.1/src/coordinator/Io.bend as Io
import mylsm-lsm-store@0.6.0.1/src/coordinator/Protocol.bend as Protocol

214def response.read(
215  pair: File & Result<&1, &1, Io.Error, Protocol.Response>,
216  request: Protocol.Request,
217  generation: U32,
218  mutation: Bool
219) -> IO(Result<&1, &1, Error, Protocol.Response>):
220  match pair:
221    case (client, Done{response}):
222      do IO<Result<&1, &1, Error, Protocol.Response>>:
223        _closed : Unit <- File.close(client)
224        return response.checked(response, request, generation)
225    case (client, Fail{error}):
226      do IO<Result<&1, &1, Error, Protocol.Response>>:
227        _closed : Unit <- File.close(client)
228        return result.failure(disconnect.error(mutation, error))

Uses (18)

Used by (1)