proarrow
Safe HaskellNone
LanguageGHC2024

Proarrow.Profunctor.Wrapped

Documentation

newtype Wrapped (p :: k -> k1 -> Type) (a :: k) (b :: k1) Source Github #

Constructors

Wrapped 

Fields

Instances

Instances details
MonoidalProfunctor p => MonoidalProfunctor (Wrapped p :: k -> j -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

par0 :: Wrapped p (Unit :: k) (Unit :: j) Source Github #

par :: forall (x1 :: k) (x2 :: j) (y1 :: k) (y2 :: j). Wrapped p x1 x2 -> Wrapped p y1 y2 -> Wrapped p (x1 ** y1) (x2 ** y2) Source Github #

Profunctor p => Profunctor (Wrapped p :: k -> j -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

dimap :: forall (c :: k) (a :: k) (b :: j) (d :: j). (c ~> a) -> (b ~> d) -> Wrapped p a b -> Wrapped p c d Source Github #

(\\) :: forall (a :: k) (b :: j) r. ((Ob a, Ob b) => r) -> Wrapped p a b -> r Source Github #

Corepresentable p => Corepresentable (Wrapped p :: k -> j -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

coindex :: forall (a :: k) (b :: j). Wrapped p a b -> (Wrapped p %% a) ~> b Source Github #

cotabulate :: forall (a :: k) (b :: j). Ob a => ((Wrapped p %% a) ~> b) -> Wrapped p a b Source Github #

corepMap :: forall (a :: k) (b :: k). (a ~> b) -> (Wrapped p %% a) ~> (Wrapped p %% b) Source Github #

Representable p => Representable (Wrapped p :: k -> j -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

index :: forall (a :: k) (b :: j). Wrapped p a b -> a ~> (Wrapped p % b) Source Github #

tabulate :: forall (b :: j) (a :: k). Ob b => (a ~> (Wrapped p % b)) -> Wrapped p a b Source Github #

repMap :: forall (a :: j) (b :: j). (a ~> b) -> (Wrapped p % a) ~> (Wrapped p % b) Source Github #

DaggerProfunctor p => DaggerProfunctor (Wrapped p :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

dagger :: forall (a :: k) (b :: k). Wrapped p a b -> Wrapped p b a Source Github #

Promonad p => Promonad (Wrapped p :: k -> k -> Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

id :: forall (a :: k). Ob a => Wrapped p a a Source Github #

(.) :: forall (b :: k) (c :: k) (a :: k). Wrapped p b c -> Wrapped p a b -> Wrapped p a c Source Github #

(Comonoid c, Monoid m, MonoidalProfunctor p) => Monoid (Wrapped p c m :: Type) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

mempty :: (Unit :: Type) ~> Wrapped p c m Source Github #

mappend :: (Wrapped p c m ** Wrapped p c m) ~> Wrapped p c m Source Github #

type (Wrapped p :: k -> j -> Type) %% (a :: k) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

type (Wrapped p :: k -> j -> Type) %% (a :: k) = p %% a
type (Wrapped p :: k -> j -> Type) % (a :: j) Source Github # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

type (Wrapped p :: k -> j -> Type) % (a :: j) = p % a

wrapped :: forall {k1} {k2} p (a :: k1) (b :: k2) (a' :: k1) (b' :: k2). Iso (p a b) (p a' b') (Wrapped p a b) (Wrapped p a' b') Source Github #