Safe Haskell | None |
---|---|
Language | Haskell2010 |
Proarrow.Category.Instance.Collage
Documentation
data COLLAGE (p :: k +-> j) Source Comments #
Instances
data Collage (a :: COLLAGE p) (b :: COLLAGE p) where Source Comments #
Constructors
InL :: forall {j} {k} (a1 :: j) (b1 :: j) (p :: k +-> j). (a1 ~> b1) -> Collage ('L a1 :: COLLAGE p) ('L b1 :: COLLAGE p) | |
InR :: forall {k} {j} (a1 :: k) (b1 :: k) (p :: k +-> j). (a1 ~> b1) -> Collage ('R a1 :: COLLAGE p) ('R b1 :: COLLAGE p) | |
L2R :: forall {k} {j} (p :: k +-> j) (a1 :: j) (b1 :: k). p a1 b1 -> Collage ('L a1 :: COLLAGE p) ('R b1 :: COLLAGE p) |
Instances
Profunctor p => Promonad (Collage :: COLLAGE p -> COLLAGE p -> Type) Source Comments # | |
Profunctor p => Profunctor (Collage :: COLLAGE p -> COLLAGE p -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Collage | |
(Thin j, Thin k, ThinProfunctor p) => ThinProfunctor (Collage :: COLLAGE p -> COLLAGE p -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Collage Methods arr :: forall (a :: COLLAGE p) (b :: COLLAGE p). (Ob a, Ob b, HasArrow (Collage :: COLLAGE p -> COLLAGE p -> Type) a b) => Collage a b Source Comments # withArr :: forall (a :: COLLAGE p) (b :: COLLAGE p) r. Collage a b -> (HasArrow (Collage :: COLLAGE p -> COLLAGE p -> Type) a b => r) -> r Source Comments # | |
type HasArrow (Collage :: COLLAGE p -> COLLAGE p -> Type) (a :: COLLAGE p) (b :: COLLAGE p) Source Comments # | |
Defined in Proarrow.Category.Instance.Collage |
class HasArrowCollage (p :: k +-> j) (a :: COLLAGE p) (b :: COLLAGE p) where Source Comments #
Instances
(Thin j, HasArrow ((~>) :: CAT j) a b, Ob a, Ob b) => HasArrowCollage (p :: k +-> j) ('L a :: COLLAGE p) ('L b :: COLLAGE p) Source Comments # | |
(ThinProfunctor p, HasArrow p a b, Ob a, Ob b) => HasArrowCollage (p :: k +-> j) ('L a :: COLLAGE p) ('R b :: COLLAGE p) Source Comments # | |
(Thin k, HasArrow ((~>) :: CAT k) a b, Ob a, Ob b) => HasArrowCollage (p :: k +-> j) ('R a :: COLLAGE p) ('R b :: COLLAGE p) Source Comments # | |
data InjL (p :: k +-> j) (a :: COLLAGE p) (b :: j) where Source Comments #
Constructors
InjL | |
Instances
Profunctor p => Representable (InjL p :: COLLAGE p -> j -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Collage | |
Profunctor p => Profunctor (InjL p :: COLLAGE p -> k1 -> Type) Source Comments # | |
type (InjL p :: COLLAGE p -> j -> Type) % (a :: j) Source Comments # | |
data InjR (p :: k +-> j) (a :: COLLAGE p) (b :: k) where Source Comments #
Constructors
InjR | |
Instances
Profunctor p => Representable (InjR p :: COLLAGE p -> j2 -> Type) Source Comments # | |
Defined in Proarrow.Category.Instance.Collage Methods index :: forall (a :: COLLAGE p) (b :: j2). InjR p a b -> a ~> (InjR p % b) Source Comments # tabulate :: forall (b :: j2) (a :: COLLAGE p). Ob b => (a ~> (InjR p % b)) -> InjR p a b Source Comments # repMap :: forall (a :: j2) (b :: j2). (a ~> b) -> (InjR p % a) ~> (InjR p % b) Source Comments # | |
Profunctor p => Profunctor (InjR p :: COLLAGE p -> k -> Type) Source Comments # | |
type (InjR p :: COLLAGE p -> j1 -> Type) % (a :: j1) Source Comments # | |