-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Pointed and copointed data -- -- Pointed and copointed data. @package pointed @version 5.0.4 module Data.Copointed -- | Copointed does not require a Functor, as the only -- relationship between copoint and fmap is given by a free -- theorem. class Copointed p copoint :: Copointed p => p a -> a instance Data.Copointed.Copointed ((,) a) instance Data.Copointed.Copointed ((,,) a b) instance Data.Copointed.Copointed ((,,,) a b c) instance Data.Default.Class.Default m => Data.Copointed.Copointed ((->) m) instance Data.Copointed.Copointed m => Data.Copointed.Copointed (Control.Applicative.WrappedMonad m) instance (Data.Default.Class.Default m, Data.Copointed.Copointed w) => Data.Copointed.Copointed (Control.Comonad.Trans.Traced.TracedT m w) instance Data.Copointed.Copointed w => Data.Copointed.Copointed (Control.Comonad.Trans.Env.EnvT e w) instance Data.Copointed.Copointed w => Data.Copointed.Copointed (Control.Comonad.Trans.Store.StoreT s w) instance Data.Copointed.Copointed Data.Tree.Tree instance Data.Copointed.Copointed (Data.Tagged.Tagged a) instance Data.Copointed.Copointed Data.Functor.Identity.Identity instance (Data.Copointed.Copointed p, Data.Copointed.Copointed q) => Data.Copointed.Copointed (Data.Functor.Compose.Compose p q) instance (Data.Copointed.Copointed f, Data.Copointed.Copointed g) => Data.Copointed.Copointed (Data.Functor.Sum.Sum f g) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (Control.Applicative.Backwards.Backwards f) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (Control.Applicative.Lift.Lift f) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (Data.Functor.Reverse.Reverse f) instance Data.Copointed.Copointed m => Data.Copointed.Copointed (Control.Monad.Trans.Identity.IdentityT m) instance Data.Copointed.Copointed m => Data.Copointed.Copointed (Control.Monad.Trans.Writer.Lazy.WriterT w m) instance Data.Copointed.Copointed m => Data.Copointed.Copointed (Control.Monad.Trans.Writer.Strict.WriterT w m) instance Data.Copointed.Copointed Data.Semigroup.Internal.Dual instance Data.Copointed.Copointed Data.Semigroup.Internal.Sum instance Data.Copointed.Copointed Data.Semigroup.Internal.Product instance Data.Copointed.Copointed GHC.Base.NonEmpty instance Data.Copointed.Copointed Data.Semigroup.First instance Data.Copointed.Copointed Data.Semigroup.Last instance Data.Copointed.Copointed Data.Semigroup.Max instance Data.Copointed.Copointed Data.Semigroup.Min instance Data.Copointed.Copointed Data.Semigroup.WrappedMonoid instance Data.Copointed.Copointed (Data.Semigroup.Arg a) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (Data.Functor.Bind.Class.WrappedApplicative f) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (Data.Functor.Bind.Class.MaybeApply f) instance Data.Copointed.Copointed GHC.Generics.Par1 instance Data.Copointed.Copointed f => Data.Copointed.Copointed (GHC.Generics.M1 i c f) instance Data.Copointed.Copointed f => Data.Copointed.Copointed (GHC.Generics.Rec1 f) instance (Data.Copointed.Copointed f, Data.Copointed.Copointed g) => Data.Copointed.Copointed (f GHC.Generics.:+: g) instance (Data.Copointed.Copointed f, Data.Copointed.Copointed g) => Data.Copointed.Copointed (f GHC.Generics.:.: g) module Data.Pointed class Pointed p point :: Pointed p => a -> p a instance Data.Pointed.Pointed [] instance Data.Pointed.Pointed GHC.Maybe.Maybe instance Data.Pointed.Pointed (Data.Either.Either a) instance Data.Pointed.Pointed GHC.Types.IO instance Data.Pointed.Pointed Control.Applicative.ZipList instance Data.Pointed.Pointed Data.Functor.Identity.Identity instance Data.Pointed.Pointed ((->) e) instance Data.Default.Class.Default e => Data.Pointed.Pointed ((,) e) instance Data.Default.Class.Default m => Data.Pointed.Pointed (Data.Functor.Const.Const m) instance GHC.Base.Monad m => Data.Pointed.Pointed (Control.Applicative.WrappedMonad m) instance Control.Arrow.Arrow a => Data.Pointed.Pointed (Control.Applicative.WrappedArrow a b) instance Data.Pointed.Pointed Data.Semigroup.Internal.Dual instance Data.Pointed.Pointed Data.Semigroup.Internal.Endo instance Data.Pointed.Pointed Data.Semigroup.Internal.Sum instance Data.Pointed.Pointed Data.Semigroup.Internal.Product instance Data.Pointed.Pointed Data.Monoid.First instance Data.Pointed.Pointed Data.Monoid.Last instance Data.Pointed.Pointed (Control.Comonad.Cokleisli w a) instance Data.Pointed.Pointed Data.Tree.Tree instance Data.Default.Class.Default k => Data.Pointed.Pointed (Data.Map.Internal.Map k) instance Data.Pointed.Pointed Data.Sequence.Internal.Seq instance Data.Pointed.Pointed Data.Sequence.Internal.ViewL instance Data.Pointed.Pointed Data.Sequence.Internal.ViewR instance Data.Pointed.Pointed Data.Set.Internal.Set instance (GHC.Base.Functor g, g GHC.Types.~ h) => Data.Pointed.Pointed (Data.Functor.Day.Curried.Curried g h) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Data.Semigroupoid.Static.Static m a) instance Data.Pointed.Pointed f => Data.Pointed.Pointed (Data.Functor.Bind.Class.WrappedApplicative f) instance Data.Pointed.Pointed (Data.Functor.Bind.Class.MaybeApply f) instance Data.Pointed.Pointed GHC.Base.NonEmpty instance Data.Pointed.Pointed Data.Semigroup.First instance Data.Pointed.Pointed Data.Semigroup.Last instance Data.Pointed.Pointed Data.Semigroup.Max instance Data.Pointed.Pointed Data.Semigroup.Min instance Data.Pointed.Pointed Data.Semigroup.Option instance Data.Pointed.Pointed Data.Semigroup.WrappedMonoid instance Data.Default.Class.Default a => Data.Pointed.Pointed (Data.Semigroup.Arg a) instance Data.Pointed.Pointed GHC.Conc.Sync.STM instance Data.Pointed.Pointed Data.Proxy.Proxy instance Data.Pointed.Pointed (Data.Tagged.Tagged a) instance (Data.Pointed.Pointed p, Data.Pointed.Pointed q) => Data.Pointed.Pointed (Data.Functor.Compose.Compose p q) instance (Data.Pointed.Pointed p, Data.Pointed.Pointed q) => Data.Pointed.Pointed (Data.Functor.Product.Product p q) instance Data.Pointed.Pointed (Control.Monad.Trans.Cont.ContT r m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.Except.ExceptT e m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.Identity.IdentityT m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.Maybe.MaybeT m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.Reader.ReaderT r m) instance Data.Default.Class.Default m => Data.Pointed.Pointed (Data.Functor.Constant.Constant m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.State.Lazy.StateT s m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.State.Strict.StateT s m) instance (Data.Default.Class.Default w, Data.Pointed.Pointed m) => Data.Pointed.Pointed (Control.Monad.Trans.RWS.Lazy.RWST r w s m) instance (Data.Default.Class.Default w, Data.Pointed.Pointed m) => Data.Pointed.Pointed (Control.Monad.Trans.RWS.Strict.RWST r w s m) instance (Data.Default.Class.Default w, Data.Pointed.Pointed m) => Data.Pointed.Pointed (Control.Monad.Trans.Writer.Lazy.WriterT w m) instance (Data.Default.Class.Default w, Data.Pointed.Pointed m) => Data.Pointed.Pointed (Control.Monad.Trans.Writer.Strict.WriterT w m) instance Data.Pointed.Pointed f => Data.Pointed.Pointed (Data.Functor.Reverse.Reverse f) instance Data.Pointed.Pointed f => Data.Pointed.Pointed (Control.Applicative.Backwards.Backwards f) instance Data.Pointed.Pointed (Control.Applicative.Lift.Lift f) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.Error.ErrorT e m) instance Data.Pointed.Pointed m => Data.Pointed.Pointed (Control.Monad.Trans.List.ListT m) instance (Data.Default.Class.Default k, Data.Hashable.Class.Hashable k) => Data.Pointed.Pointed (Data.HashMap.Internal.HashMap k) instance Data.Pointed.Pointed GHC.Generics.U1 instance Data.Pointed.Pointed GHC.Generics.Par1 instance Data.Pointed.Pointed f => Data.Pointed.Pointed (GHC.Generics.Rec1 f) instance Data.Pointed.Pointed f => Data.Pointed.Pointed (GHC.Generics.M1 i c f) instance (Data.Pointed.Pointed f, Data.Pointed.Pointed g) => Data.Pointed.Pointed (f GHC.Generics.:*: g) instance (Data.Pointed.Pointed f, Data.Pointed.Pointed g) => Data.Pointed.Pointed (f GHC.Generics.:.: g)