proarrow
Safe HaskellNone
LanguageGHC2024

Proarrow.Profunctor.Constant

Documentation

data family Constant :: k -> j +-> k Source Github #

Instances

Instances details
(Cartesian k, SelfAction k, Ob c) => Strong k (Rep (Constant c) :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Category.Monoidal.Optic

Methods

act :: forall (a :: k) (b :: k) (x :: k) (y :: k). (a ~> b) -> Rep (Constant c) x y -> Rep (Constant c) (Act a x) (Act b y) Source Github #

Strong (COPROD Type) (Rep (Constant (First c)) :: Type -> Type -> Type) Source Github # 
Instance details

Defined in Proarrow.Category.Monoidal.Optic

Methods

act :: forall (a :: COPROD Type) (b :: COPROD Type) x y. (a ~> b) -> Rep (Constant (First c)) x y -> Rep (Constant (First c)) (Act a x) (Act b y) Source Github #

(Cartesian k, Ob c, Strong (SUBCAT (Any :: k -> Constraint)) ((~>) :: CAT k)) => Strong (SUBCAT (Any :: k -> Constraint)) (Rep (Constant c) :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Category.Monoidal.Optic

Methods

act :: forall (a :: SUBCAT (Any :: k -> Constraint)) (b :: SUBCAT (Any :: k -> Constraint)) (x :: k) (y :: k). (a ~> b) -> Rep (Constant c) x y -> Rep (Constant c) (Act a x) (Act b y) Source Github #

(Monoidal k, Comonoid r) => MonoidalProfunctor (Corep (Constant r) :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Monoid

Methods

par0 :: Corep (Constant r) (Unit :: k) (Unit :: k) Source Github #

par :: forall (x1 :: k) (x2 :: k) (y1 :: k) (y2 :: k). Corep (Constant r) x1 x2 -> Corep (Constant r) y1 y2 -> Corep (Constant r) (x1 ** y1) (x2 ** y2) Source Github #

(Monoidal k, Monoid r) => MonoidalProfunctor (Rep (Constant r) :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Monoid

Methods

par0 :: Rep (Constant r) (Unit :: k) (Unit :: k) Source Github #

par :: forall (x1 :: k) (x2 :: k) (y1 :: k) (y2 :: k). Rep (Constant r) x1 x2 -> Rep (Constant r) y1 y2 -> Rep (Constant r) (x1 ** y1) (x2 ** y2) Source Github #

(CategoryOf j, CategoryOf k, Ob c) => FunctorForRep (Constant c :: j +-> k) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Constant

Methods

fmap :: forall (a :: j) (b :: j). (a ~> b) -> (Constant c @ a) ~> (Constant c @ b) Source Github #

(HasCoproducts k, Ob r) => MonoidalProfunctor (Coprod (Rep (Constant r)) :: COPROD k -> COPROD k -> Type) Source Github # 
Instance details

Defined in Proarrow.Monoid

Methods

par0 :: Coprod (Rep (Constant r)) (Unit :: COPROD k) (Unit :: COPROD k) Source Github #

par :: forall (x1 :: COPROD k) (x2 :: COPROD k) (y1 :: COPROD k) (y2 :: COPROD k). Coprod (Rep (Constant r)) x1 x2 -> Coprod (Rep (Constant r)) y1 y2 -> Coprod (Rep (Constant r)) (x1 ** y1) (x2 ** y2) Source Github #

type (Constant c :: j +-> k) @ (a :: j) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Constant

type (Constant c :: j +-> k) @ (a :: j) = c

view :: forall {k} (c :: (k -> k -> Type) -> Constraint) (s :: k) (a :: k). (CategoryOf k, Ob a => c (Rep (Constant a))) => Optic' c s a -> s ~> a Source Github #

(^.) :: forall (c :: (Type -> Type -> Type) -> Constraint) a s. c (Rep (Constant a)) => s -> Optic' c s a -> a infixl 8 Source Github #

review :: forall {k} (c :: (k -> k -> Type) -> Constraint) (t :: k) (b :: k). (CategoryOf k, Ob b => c (Corep (Constant b))) => Optic' c t b -> b ~> t Source Github #

(#) :: forall {k} (c :: (k -> k -> Type) -> Constraint) (t :: k) (b :: k). (CategoryOf k, c (Corep (Constant b))) => Optic' c t b -> b ~> t infixr 8 Source Github #