~/bend-docscommunity

src/Store.bend fails

raw source on the hub · import ber-core-store@0.1.1.0/src/Store.bend as Store

3 imports
import Base
import mylsm-lsm-store@0.3.1.0/mylsm.bend as MyLsmStore
import mylsm-lsm-store@0.3.1.0/src/Db.bend as DbTypes

Types

type Op source · line 12 · raw

@-a:Quant -> @-A:Kind(a) -> Kind(a <&> &1)

One session step chain; the answer type rides along.

type Handle source · line 16 · raw

Type

An opened store handle; affine, threaded through run_op.

Definitions

def Op.inner source · line 20 · raw

@-b:Quant -> @-B:Kind(b) -> @op:Op<b, B> -> 0x0ae7ac793853e753f5f74c16e06ee078/mylsm.Sess<b, B>

Unwraps the inner session for translators like bind and run_op.

def Op.pure source · line 26 · raw

@-a:Quant -> @-A:Kind(a) -> @val:A -> Op<a, A>

Lifts a pure value; what return desugars to inside do-blocks.

def Op.bind source · line 30 · raw

@-a:Quant -> @-A:Kind(a) -> @-B:Kind(a) -> @op:Op<a, A> -> @fun:(@_:A -> Op<a, B>) -> Op<a, B>

Sequences two ops; what <- desugars to inside do-blocks.

def oput source · line 34 · raw

@+key:String -> @+val:String -> Op<&2, Unit>

Writes one key.

def oget source · line 38 · raw

@+key:String -> Op<&2, Maybe<&2, String>>

Reads one key; missing reads as None.

def odel source · line 42 · raw

@+key:String -> Op<&2, Unit>

Deletes one key.

def open_store source · line 46 · raw

@+dir:String -> Handle

Opens a store handle over a directory label.

def rewrap_pair source · line 50 · raw

@-a:Quant -> @-A:Kind(a) -> @computed_pair:Pair(0x0ae7ac793853e753f5f74c16e06ee078/src/Db.Db, A) -> Pair(Handle, A)

Rewraps a computed runner pair into Handle form.

def run_op source · line 56 · raw

@-a:Quant -> @-A:Kind(a) -> @store:Handle -> @op:Op<a, A> -> Pair(Handle, A)

Executes a whole op chain against a handle.