def snapshot.resource.cursor.release.result

mylsm-lsm-store@0.6.0.1 · src/scan/Snapshot.bend:605

import mylsm-lsm-store@0.6.0.1/src/scan/Snapshot.bend as Snapshot
import Base

605def snapshot.resource.cursor.release.result(
606  resource: SnapshotResource,
607  has_reference: Bool
608) -> SnapshotCursorDecision:
609  match resource:
610    case SnapshotResource{id, generation, retained_bytes, cursor_count}:
611      match has_reference:
612        case True{}:
613          SnapshotCursorReleased{SnapshotResource{id, generation,
614            retained_bytes, Nat.sub(cursor_count, 1n)}}
615        case False{}: SnapshotCursorUnderflow{resource}

Uses (4)

Used by (1)