def count.keep.go
import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTableimport Base
76# Counts entries while preserving the list for a subsequent lookup.
77def count.keep.go(
78 entries: List<&1, Entry>,
79 reversed: List<&1, Entry>,
80 total: Nat
81) -> List<&1, Entry> & Nat:
82 match entries:
83 case Nil{}:
84 (List.reverse(&1, Entry, reversed), total)
85 case Con{entry, tail}:
86 count.keep.go(tail, Con{entry, reversed}, Nat.add(total, 1n))