Safe Haskell | None |
---|---|
Language | GHC2021 |
Test.Credit.Deque.ImplicitCat
Documentation
data ImplicitCat a (m :: Type -> Type) Source #
Instances
BoundedDeque ImplicitCat Source # | |
Deque ImplicitCat Source # | |
Defined in Test.Credit.Deque.ImplicitCat Methods empty :: MonadInherit m => m (ImplicitCat a m) Source # cons :: MonadInherit m => a -> ImplicitCat a m -> m (ImplicitCat a m) Source # snoc :: MonadInherit m => ImplicitCat a m -> a -> m (ImplicitCat a m) Source # uncons :: MonadInherit m => ImplicitCat a m -> m (Maybe (a, ImplicitCat a m)) Source # unsnoc :: MonadInherit m => ImplicitCat a m -> m (Maybe (ImplicitCat a m, a)) Source # concat :: MonadInherit m => ImplicitCat a m -> ImplicitCat a m -> m (ImplicitCat a m) Source # | |
(MonadMemory m, MemoryCell m a) => MemoryCell m (ImplicitCat a m) Source # | |
Defined in Test.Credit.Deque.ImplicitCat Methods prettyCell :: ImplicitCat a m -> m Memory Source # | |
Pretty a => MemoryStructure (ImplicitCat (PrettyCell a)) Source # | |
Defined in Test.Credit.Deque.ImplicitCat Methods prettyStructure :: MonadMemory m => ImplicitCat (PrettyCell a) m -> m Memory Source # |
data ILazyCon (m :: Type -> Type) a where Source #
Constructors
IPay :: forall (m :: Type -> Type) a1 a. Thunk m (ILazyCon m) (ImplicitCat (CmpdElem a1 m) m) -> m a -> ILazyCon m a | |
ILazy :: forall (m :: Type -> Type) a. m a -> ILazyCon m a |
Instances
MonadCredit m => HasStep (ILazyCon m :: Type -> Type) (m :: Type -> Type) Source # | |
Defined in Test.Credit.Deque.ImplicitCat | |
(MonadMemory m, MemoryCell m a) => MemoryCell m (ILazyCon m a) Source # | |
Defined in Test.Credit.Deque.ImplicitCat Methods prettyCell :: ILazyCon m a -> m Memory Source # |
data CmpdElem a (m :: Type -> Type) Source #
Instances
(MonadMemory m, MemoryCell m a) => MemoryCell m (CmpdElem a m) Source # | |
Defined in Test.Credit.Deque.ImplicitCat Methods prettyCell :: CmpdElem a m -> m Memory Source # |
deep :: MonadCredit m => BDeque a m -> Thunk m (ILazyCon m) (ImplicitCat (CmpdElem a m) m) -> BDeque a m -> Thunk m (ILazyCon m) (ImplicitCat (CmpdElem a m) m) -> BDeque a m -> m (ImplicitCat a m) Source #
icreditWith :: MonadCredit m => Thunk m (ILazyCon m) (ImplicitCat a m) -> Credit -> m () Source #
cmpd :: MonadCredit m => BDeque a m -> Thunk m (ILazyCon m) (ImplicitCat (CmpdElem a m) m) -> BDeque a m -> m (CmpdElem a m) Source #
share :: MonadInherit m => BDeque a m -> BDeque a m -> m (BDeque a m, BDeque a m, BDeque a m) Source #
concat' :: MonadInherit m => ImplicitCat a m -> ImplicitCat a m -> m (ImplicitCat a m) Source #
replaceHead :: MonadInherit m => a -> ImplicitCat a m -> m (ImplicitCat a m) Source #
uncons' :: MonadInherit m => ImplicitCat a m -> m (Maybe (a, Thunk m (ILazyCon m) (ImplicitCat a m))) Source #
replaceLast :: MonadInherit m => ImplicitCat a m -> a -> m (ImplicitCat a m) Source #
unsnoc' :: MonadInherit m => ImplicitCat a m -> m (Maybe (Thunk m (ILazyCon m) (ImplicitCat a m), a)) Source #