Data.Copointed

pointed-5: Pointed and copointed data

Safe Haskell | Safe
Language | Haskell98

Data.Copointed

Synopsis

- class Copointed p where
  - copoint :: p a -> a

# Documentation

class Copointed p where

`Copointed` does not require a `Functor`, as the only relationship between `copoint` and `fmap` is given by a free theorem.

Methods

copoint :: p a -> a

Instances

Copointed Identity |
Copointed Dual |
Copointed Sum |
Copointed Tree |
Copointed Min |
Copointed Max |
Copointed First |
Copointed Last |
Copointed WrappedMonoid |
Copointed NonEmpty |
Default m => Copointed ((->) m) |
Copointed ((,) a) |
Copointed m => Copointed (WrappedMonad m) |
Copointed m => Copointed (IdentityT m) |
Copointed f => Copointed (WrappedApplicative f) |
Copointed f => Copointed (MaybeApply f) |
Copointed (Arg a) |
Copointed f => Copointed (Reverse f) |
Copointed f => Copointed (Backwards f) |
Copointed f => Copointed (Lift f) |
Copointed ((,,) a b) |
(Default m, Copointed w) => Copointed (TracedT m w) |
Copointed w => Copointed (StoreT s w) |
Copointed w => Copointed (EnvT e w) |
Copointed m => Copointed (WriterT w m) |
Copointed m => Copointed (WriterT w m) |
(Copointed p, Copointed q) => Copointed (Compose p q) |
Copointed (Tagged * a) |
(Copointed f, Copointed g) => Copointed (Sum f g) |
Copointed ((,,,) a b c) |