Link Search Menu Expand Document

PHeap overview

Added in v0.1.0


Table of contents


utils

PHeap (interface)

Typeclass for persistent heaps.

Signature

export interface PHeap<H extends URIS> {
  readonly empty: <A>(ord: Ord<A>) => Kind<H, A>
  readonly isEmpty: <A>(ord: Ord<A>) => (heap: Kind<H, A>) => boolean

  readonly insert: <A>(ord: Ord<A>) => (a: A, heap: Kind<H, A>) => Kind<H, A>
  readonly merge: <A>(ord: Ord<A>) => (a: Kind<H, A>, b: Kind<H, A>) => Kind<H, A>

  readonly findMin: <A>(ord: Ord<A>) => (heap: Kind<H, A>) => Option<A>
  readonly deleteMin: <A>(ord: Ord<A>) => (heap: Kind<H, A>) => Option<Kind<H, A>>
}

Added in v0.1.0