def Bytes.get

mylsm-lsm-store@0.6.0.1 · mylsm.bend:698

import mylsm-lsm-store@0.6.0.1/mylsm.bend as Mylsm
import Base
import bend-kit-bytes@0.3.2.0/bytes.bend as PackedBytes
import mylsm-lsm-store@0.6.0.1/src/ByteDurableDb.bend as RawByteDb
import mylsm-lsm-store@0.6.0.1/src/coordinator/Client.bend as OwnerClient
import mylsm-lsm-store@0.6.0.1/src/coordinator/ByteClient.bend as OwnerByteClient

698def Bytes.get(
699  handle: Bytes.Handle,
700  key: PackedBytes.Bytes
701) -> IO(Bytes.Handle & Result<&1, &1, Bytes.Error, Maybe<&1, PackedBytes.Bytes>>):
702  match handle:
703    case ByteHandle{raw}:
704      do IO<Bytes.Handle & Result<&1, &1, Bytes.Error, Maybe<&1, PackedBytes.Bytes>>>:
705        pair : RawByteDb.Handle & Result<&1, &1, RawByteDb.Error, Maybe<&1, PackedBytes.Bytes>> <- RawByteDb.get(raw, key)
706        return Bytes.get.result(pair)
707    case RemoteByteHandle{session}:
708      do IO<Bytes.Handle & Result<&1, &1, Bytes.Error,
709        Maybe<&1, PackedBytes.Bytes>>>:
710        pair : OwnerClient.Session & Result<&1, &1, OwnerClient.Error,
711          Maybe<&1, PackedBytes.Bytes>> <- OwnerByteClient.get(session, key)
712        return Bytes.owner.get.result(pair)

Uses (17)

Used by (1)