def singleton_runs
import mylsm-lsm-store@0.3.2.0/src/SortedRun.bend as SortedRunimport Base
import mylsm-lsm-store@0.3.2.0/src/MemTable.bend as MemTable
284# Canonicalize raw newest-first entries in O(N log N): each entry starts as one
285# already-sorted run, and stable EQ selection preserves the earlier/newer entry.
286def singleton_runs(entries: List<&2, MemTable.Entry>) -> List<&2, List<&2, MemTable.Entry>>:
287 match entries:
288 case Nil{}:
289 Nil{}
290 case Con{entry, rest}:
291 Con{Con{entry, Nil{}}, singleton_runs(rest)}