pointed-5.0.1: Pointed and copointed data

Safe Haskell Safe Haskell98

Data.Copointed

Synopsis

Documentation

class Copointed p where Source #

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

Minimal complete definition

copoint

Methods

copoint :: p a -> a Source #

Instances

 Source # Methodscopoint :: Par1 a -> a Source # Source # Methodscopoint :: Min a -> a Source # Source # Methodscopoint :: Max a -> a Source # Source # Methodscopoint :: First a -> a Source # Source # Methodscopoint :: Last a -> a Source # Source # Methodscopoint :: WrappedMonoid a -> a Source # Source # Methodscopoint :: NonEmpty a -> a Source # Source # Methodscopoint :: Identity a -> a Source # Source # Methodscopoint :: Dual a -> a Source # Source # Methodscopoint :: Sum a -> a Source # Source # Methodscopoint :: Product a -> a Source # Source # Methodscopoint :: Tree a -> a Source # Copointed ((,) a) Source # Methodscopoint :: (a, a) -> a Source # Copointed (Arg a) Source # Methodscopoint :: Arg a a -> a Source # Source # Methodscopoint :: WrappedMonad m a -> a Source # Source # Methodscopoint :: WrappedApplicative f a -> a Source # Copointed f => Copointed (MaybeApply f) Source # Methodscopoint :: MaybeApply f a -> a Source # Copointed f => Copointed (Lift f) Source # Methodscopoint :: Lift f a -> a Source # Copointed f => Copointed (Rec1 * f) Source # Methodscopoint :: Rec1 * f a -> a Source # Copointed ((,,) a b) Source # Methodscopoint :: (a, b, a) -> a Source # (Default m, Copointed w) => Copointed (TracedT m w) Source # Methodscopoint :: TracedT m w a -> a Source # Copointed w => Copointed (StoreT s w) Source # Methodscopoint :: StoreT s w a -> a Source # Copointed w => Copointed (EnvT e w) Source # Methodscopoint :: EnvT e w a -> a Source # Copointed m => Copointed (IdentityT * m) Source # Methodscopoint :: IdentityT * m a -> a Source # Copointed m => Copointed (WriterT w m) Source # Methodscopoint :: WriterT w m a -> a Source # Copointed m => Copointed (WriterT w m) Source # Methodscopoint :: WriterT w m a -> a Source # Source # Methodscopoint :: Tagged * a a -> a Source # Copointed f => Copointed (Reverse * f) Source # Methodscopoint :: Reverse * f a -> a Source # Copointed f => Copointed (Backwards * f) Source # Methodscopoint :: Backwards * f a -> a Source # Default m => Copointed ((->) LiftedRep LiftedRep m) Source # Methodscopoint :: (LiftedRep -> LiftedRep) m a -> a Source # (Copointed f, Copointed g) => Copointed ((:+:) * f g) Source # Methodscopoint :: (* :+: f) g a -> a Source # Copointed ((,,,) a b c) Source # Methodscopoint :: (a, b, c, a) -> a Source # (Copointed f, Copointed g) => Copointed (Sum * f g) Source # Methodscopoint :: Sum * f g a -> a Source # Copointed f => Copointed (M1 * i c f) Source # Methodscopoint :: M1 * i c f a -> a Source # (Copointed f, Copointed g) => Copointed ((:.:) * * f g) Source # Methodscopoint :: (* :.: *) f g a -> a Source # (Copointed p, Copointed q) => Copointed (Compose * * p q) Source # Methodscopoint :: Compose * * p q a -> a Source #