Safe Haskell | None |
---|---|
Language | GHC2021 |
Test.Credit.Heap.Pairing
Synopsis
- data PairingHeap a (m :: k)
- = Nil
- | Heap a (PairingHeap a m) (PairingHeap a m)
- data Pairing a (m :: k)
- = Empty
- | Root a (PairingHeap a m)
- link :: forall {k} a (m :: k). Ord a => Pairing a m -> Pairing a m -> Pairing a m
- mergePairs :: (MonadCredit m, Ord a) => PairingHeap a m -> m (Pairing a m)
Documentation
data PairingHeap a (m :: k) Source #
Constructors
Nil | |
Heap a (PairingHeap a m) (PairingHeap a m) |
Instances
(MonadMemory m, MemoryCell m a) => MemoryCell m (PairingHeap a m) Source # | |
Defined in Test.Credit.Heap.Pairing Methods prettyCell :: PairingHeap a m -> m Memory Source # |
data Pairing a (m :: k) Source #
At the root, the right child is Empty.
Constructors
Empty | |
Root a (PairingHeap a m) |
Instances
(MonadMemory m, MemoryCell m a) => MemoryCell m (Pairing a m) Source # | |
Defined in Test.Credit.Heap.Pairing Methods prettyCell :: Pairing a m -> m Memory Source # | |
BoundedHeap (Pairing :: Type -> (Type -> Type) -> Type) Source # | |
Heap (Pairing :: Type -> (Type -> Type) -> Type) Source # | |
Defined in Test.Credit.Heap.Pairing Methods empty :: MonadCredit m => m (Pairing a m) Source # insert :: (MonadCredit m, Ord a) => a -> Pairing a m -> m (Pairing a m) Source # merge :: (MonadCredit m, Ord a) => Pairing a m -> Pairing a m -> m (Pairing a m) Source # splitMin :: (MonadCredit m, Ord a) => Pairing a m -> m (Maybe (a, Pairing a m)) Source # | |
Pretty a => MemoryStructure (Pairing (PrettyCell a) :: (Type -> Type) -> Type) Source # | |
Defined in Test.Credit.Heap.Pairing Methods prettyStructure :: MonadMemory m => Pairing (PrettyCell a) m -> m Memory Source # |
mergePairs :: (MonadCredit m, Ord a) => PairingHeap a m -> m (Pairing a m) Source #