def merge_step

mylsm-lsm-store@0.3.2.0 · src/SortedRun.bend:193

import mylsm-lsm-store@0.3.2.0/src/SortedRun.bend as SortedRun
import Base
import mylsm-lsm-store@0.3.2.0/src/MemTable.bend as MemTable

193def merge_step(
194  order: Cmp,
195  +newer_head: MemTable.Entry,
196  newer_tail: List<&2, MemTable.Entry>,
197  +older_head: MemTable.Entry,
198  older_tail: List<&2, MemTable.Entry>,
199  acc: List<&2, MemTable.Entry>
200) -> List<&2, MemTable.Entry> & List<&2, MemTable.Entry> & List<&2, MemTable.Entry>:
201  match order:
202    case LT{}:
203      (Con{newer_head, acc}, newer_tail, Con{older_head, older_tail})
204    case EQ{}:
205      (Con{newer_head, acc}, newer_tail, older_tail)
206    case GT{}:
207      (Con{older_head, acc}, Con{newer_head, newer_tail}, older_tail)

Uses (5)

Used by (1)