Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
type family Index10 (f :: (k -> Type) -> Type) :: k -> Type Source #
The index type associated with a given f
.
This is often a GADT-like type, in that inspecting Index10 f a
can refine
a
to some more concrete type, provide instances for it via Entails
, etc.
Instances
type Index10 (Wrapped1 (Representable10 :: ((k -> Type) -> Type) -> Constraint) f :: (k -> Type) -> Type) Source # | |
Defined in Data.Ten.Representable type Index10 (Wrapped1 (Representable10 :: ((k -> Type) -> Type) -> Constraint) f :: (k -> Type) -> Type) = Rep10 f | |
type Index10 (g :.: f :: (k -> Type) -> Type) Source # | |
type Index10 ((:**) k :: (Type -> Type) -> Type) Source # | |
class Functor10 f => Functor10WithIndex f where Source #
Instances
Representable10 f => Functor10WithIndex (Wrapped1 (Representable10 :: ((k -> Type) -> Type) -> Constraint) f :: (k -> Type) -> Type) Source # | |
Defined in Data.Ten.Representable imap10 :: (forall (a :: k0). Index10 (Wrapped1 Representable10 f) a -> m a -> n a) -> Wrapped1 Representable10 f m -> Wrapped1 Representable10 f n Source # | |
(Functor g, Functor10WithIndex f) => Functor10WithIndex (g :.: f :: (k -> Type) -> Type) Source # | |
Functor10WithIndex ((:**) k :: (Type -> Type) -> Type) Source # | |