| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Pandora.Pattern.Functor.Comonad
Synopsis
- class (Extractable t, Extendable t) => Comonad t
Documentation
class (Extractable t, Extendable t) => Comonad t Source #
Let f :: (Pointable t, Bindable t) => t a -> b Let g :: (Pointable t, Bindable t) => t a -> b
When providing a new instance, you should ensure it satisfies the three laws: * Left identity: extend extract ≡ identity * Right identity: extract . extend f ≡ f * Associativity: extend f . extend g ≡ extend (f . extend g)
Instances
| Comonad Identity Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Identity | |
| Comonad (Product s) Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Product | |
| Covariant t => Comonad (Construction t) Source # | |
| Comonad (Store s) Source # | |
Defined in Pandora.Paradigm.Inventory.Store | |
| Comonad (Equipment e) Source # | |
Defined in Pandora.Paradigm.Inventory.Equipment | |
| Comonad (Tagged tag) Source # | |
Defined in Pandora.Paradigm.Primary.Functor.Tagged | |
| (Extractable (t :< u), Extendable (t :< u)) => Comonad (t :< u) 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 # | |