def count.keep.go

mylsm-lsm-store@0.6.0.1 · src/ByteMemTable.bend:76

import mylsm-lsm-store@0.6.0.1/src/ByteMemTable.bend as ByteMemTable
import 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))

Uses (7)

Used by (1)