def mutations
mylsm-lsm-store@0.6.0.1 · src/ByteSstFile.bend:94
import mylsm-lsm-store@0.6.0.1/src/ByteSstFile.bend as ByteSstFile
import Base
import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable
import mylsm-lsm-store@0.6.0.1/src/ByteWal.bend as ByteWal
94
95def mutations(entries: List<&1, ByteMemTable.Entry>) -> List<&1, ByteWal.Mutation>:
96 match entries:
97 case Nil{}:
98 Nil{}
99 case Con{ByteMemTable.Entry{key, val}, tail}:
100 match val:
101 case None{}:
102 Con{ByteWal.Delete{key}, mutations(tail)}
103 case Some{value}:
104 Con{ByteWal.Put{key, value}, mutations(tail)}