Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
class (Monoidal (<--) source (:*:) (:*:) t, Extendable source t) => Comonad t source Source #
Let f :: (Extendable t, Extractable t) => t a -> b Let g :: (Extendable t, Extractable t) => t a -> b
When providing a new instance, you should ensure it satisfies: * Left identity: extend extract ≡ identity * Right identity: extract . extend f ≡ f * Associativity: extend f . extend g ≡ extend (f . extend g)
Instances
Comonad Identity ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Identity | |
Comonad ((:*:) s) ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Primary.Algebraic | |
(Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t) => Comonad (Construction t) ((->) :: Type -> Type -> Type) Source # | |
Comonad (Store s) ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Inventory.Store | |
Comonad (Tagged tag) ((->) :: Type -> Type -> Type) Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Tagged | |
(Extractable_ (t :< u), Extendable ((->) :: Type -> Type -> Type) (t :< u)) => Comonad (t :< u) ((->) :: Type -> Type -> Type) Source # | |
type Schematic Comonad (Store s) Source # | |
type Schematic Comonad (Imprint e) Source # | |
Defined in Pandora.Paradigm.Inventory.Imprint | |
type Schematic Comonad (Equipment e) Source # | |