def decode.payload

mylsm-lsm-store@0.6.0.1 · src/coordinator/Operation.bend:277

import mylsm-lsm-store@0.6.0.1/src/coordinator/Operation.bend as Operation
import Base
import mylsm-lsm-store@0.6.0.1/src/ByteWal.bend as ByteWal
import bend-kit-bytes@0.3.2.0/bytes.bend as Bytes

277def decode.payload(
278  operation_code: U32,
279  payload: Bytes.Bytes
280) -> Decision:
281  match operation_code:
282    case 1: Decoded{Get{payload}}
283    case 2: put.decode(payload)
284    case 3: Decoded{Delete{payload}}
285    case 4: empty.operation(Bytes.length(payload), Flush{})
286    case 5: empty.operation(Bytes.length(payload), Compact{})
287    case 6: empty.operation(Bytes.length(payload), Stats{})
288    case 8: batch.result(ByteWal.decode(payload))
289    case 9: empty.operation(Bytes.length(payload), SnapshotOpen{})
290    case 10: snapshot.get.decode(payload)
291    case 11: snapshot.close.decode(payload)
292    case 12: snapshot.cursor.open.decode(payload)
293    case 13: snapshot.cursor.next.decode(payload)
294    case 14: snapshot.cursor.close.decode(payload)
295    case 15: snapshot.cursor.seek.decode(payload)
296    case 16: empty.operation(Bytes.length(payload), DescribeOwner{})
297    case _: UnsupportedOperation{}

Uses (18)

Used by (1)