recursion-schemes-ix-0.1.0.0: Recursion schemes over indexed Functors
Safe HaskellNone
LanguageHaskell2010

Data.IFunctor.ICofree

Synopsis

Documentation

data ICofree f a ix Source #

Cofree IComonad

Constructors

(a ix) ::< (f (ICofree f a) ix) infixr 5 

Instances

Instances details
IFunctor f => IFunctor (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

imap :: forall (a :: k0 -> Type) (b :: k0 -> Type). (a ~~> b) -> ICofree f a ~~> ICofree f b Source #

IOrd f => IOrd (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

icompare :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => a ix -> a ix -> Ordering) -> ICofree f a ix -> ICofree f a ix -> Ordering Source #

IEq f => IEq (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

ieq :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => a ix -> a ix -> Bool) -> ICofree f a ix -> ICofree f a ix -> Bool Source #

IRead f => IRead (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

ireadPrec :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => ReadPrec (a ix)) -> ReadPrec (ICofree f a ix) Source #

ireadsPrec :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => Int -> ReadS (a ix)) -> Int -> ReadS (ICofree f a ix) Source #

IShow f => IShow (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

ishowsPrec :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => Int -> a ix -> ShowS) -> Int -> ICofree f a ix -> ShowS Source #

ishow :: forall (ix :: k0) a. SingI ix => (forall (ix :: k1). SingI ix => Int -> a ix -> ShowS) -> ICofree f a ix -> String Source #

ITraversable f => ITraversable (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

itraverse :: forall m (ix :: k0) a b. (Applicative m, SingI ix) => (forall (ix :: k1). SingI ix => a ix -> m (b ix)) -> ICofree f a ix -> m (ICofree f b ix) Source #

IFunctor f => IComonad (ICofree f :: (k -> Type) -> k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

iextract :: forall (a :: k0 -> Type). ICofree f a ~~> a Source #

iduplicate :: forall (a :: k0 -> Type). ICofree f a ~~> ICofree f (ICofree f a) Source #

iextend :: forall (a :: k0 -> Type) (b :: k0 -> Type). (ICofree f a ~~> b) -> ICofree f a ~~> ICofree f b Source #

Generic1 (ICofree f a :: k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Associated Types

type Rep1 (ICofree f a) :: k -> Type #

Methods

from1 :: forall (a0 :: k0). ICofree f a a0 -> Rep1 (ICofree f a) a0 #

to1 :: forall (a0 :: k0). Rep1 (ICofree f a) a0 -> ICofree f a a0 #

(IEq f, IEq2 a, SingI ix) => Eq (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

(==) :: ICofree f a ix -> ICofree f a ix -> Bool #

(/=) :: ICofree f a ix -> ICofree f a ix -> Bool #

(IOrd f, IOrd2 a, SingI ix) => Ord (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

compare :: ICofree f a ix -> ICofree f a ix -> Ordering #

(<) :: ICofree f a ix -> ICofree f a ix -> Bool #

(<=) :: ICofree f a ix -> ICofree f a ix -> Bool #

(>) :: ICofree f a ix -> ICofree f a ix -> Bool #

(>=) :: ICofree f a ix -> ICofree f a ix -> Bool #

max :: ICofree f a ix -> ICofree f a ix -> ICofree f a ix #

min :: ICofree f a ix -> ICofree f a ix -> ICofree f a ix #

(IRead f, IRead2 a, SingI ix) => Read (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

readsPrec :: Int -> ReadS (ICofree f a ix) #

readList :: ReadS [ICofree f a ix] #

readPrec :: ReadPrec (ICofree f a ix) #

readListPrec :: ReadPrec [ICofree f a ix] #

(IShow f, IShow2 a, SingI ix) => Show (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Methods

showsPrec :: Int -> ICofree f a ix -> ShowS #

show :: ICofree f a ix -> String #

showList :: [ICofree f a ix] -> ShowS #

Generic (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

Associated Types

type Rep (ICofree f a ix) :: Type -> Type #

Methods

from :: ICofree f a ix -> Rep (ICofree f a ix) x #

to :: Rep (ICofree f a ix) x -> ICofree f a ix #

type Rep1 (ICofree f a :: k -> Type) Source # 
Instance details

Defined in Data.IFunctor.ICofree

type Rep1 (ICofree f a :: k -> Type) = D1 ('MetaData "ICofree" "Data.IFunctor.ICofree" "recursion-schemes-ix-0.1.0.0-LBKNYYUUm79APWA4D6g9GS" 'False) (C1 ('MetaCons "::<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec1 (f (ICofree f a)))))
type Rep (ICofree f a ix) Source # 
Instance details

Defined in Data.IFunctor.ICofree

type Rep (ICofree f a ix) = D1 ('MetaData "ICofree" "Data.IFunctor.ICofree" "recursion-schemes-ix-0.1.0.0-LBKNYYUUm79APWA4D6g9GS" 'False) (C1 ('MetaCons "::<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a ix)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (ICofree f a) ix))))