hoogle
Data.Heap
data Heap k v
empty :: Heap k v
fromList :: Ord k => [(k, v)] -> Heap k v
toList :: Heap k v -> [(k, v)]
elems :: Heap k v -> [v]
singleton :: Ord k => k -> v -> Heap k v
insert :: Ord k => k -> v -> Heap k v -> Heap k v
insertList :: Ord k => [(k, v)] -> Heap k v -> Heap k v
pop :: Ord k => Heap k v -> Maybe ((k, v), Heap k v)
popUntil :: Ord k => k -> Heap k v -> ([v], Heap k v)
popWhile :: Ord k => k -> Heap k v -> ([v], Heap k v)