Safe Haskell | None |
---|---|
Language | Haskell2010 |
Proarrow.Profunctor.List
Documentation
Constructors
L [k] |
Instances
data List (p :: j +-> k) (as :: LIST k) (bs :: LIST j) where Source Comments #
Constructors
Nil :: forall {j} {k} (p :: j +-> k). List p ('L ('[] :: [k])) ('L ('[] :: [j])) | |
Cons :: forall {k} {j} (as1 :: [k]) (bs1 :: [j]) (p :: j +-> k) (a :: k) (b :: j). (IsList as1, IsList bs1) => p a b -> List p ('L as1) ('L bs1) -> List p ('L (a ': as1)) ('L (b ': bs1)) |
Instances
Strong m p => Strong m (List p :: LIST k -> LIST j -> Type) Source Comments # | |
Profunctor p => MonoidalProfunctor (List p :: LIST k -> LIST j -> Type) Source Comments # | The free monoidal profunctor on a profunctor. |
Profunctor p => Profunctor (List p :: LIST k -> LIST j -> Type) Source Comments # | |
Representable p => Representable (List p :: LIST k -> LIST j -> Type) Source Comments # | |
Defined in Proarrow.Profunctor.List Methods index :: forall (a :: LIST k) (b :: LIST j). List p a b -> a ~> (List p % b) Source Comments # tabulate :: forall (b :: LIST j) (a :: LIST k). Ob b => (a ~> (List p % b)) -> List p a b Source Comments # repMap :: forall (a :: LIST j) (b :: LIST j). (a ~> b) -> (List p % a) ~> (List p % b) Source Comments # | |
DaggerProfunctor p => DaggerProfunctor (List p :: LIST j -> LIST j -> Type) Source Comments # | |
Promonad p => Promonad (List p :: LIST j -> LIST j -> Type) Source Comments # | |
Functor (List :: (j +-> k) -> LIST k -> LIST j -> Type) Source Comments # | |
type (List p :: LIST k -> LIST j -> Type) % ('L (a ': as) :: LIST j) Source Comments # | |
type (List p :: LIST k -> LIST j -> Type) % ('L ('[] :: [j]) :: LIST j) Source Comments # | |