Safe Haskell | None |
---|---|
Language | Haskell2010 |
Proarrow.Object.Copower
Documentation
class CategoryOf k => Copowered k where Source Comments #
Categories copowered over Hask.
Methods
withObCopower :: forall (a :: k) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments #
copower :: forall (a :: k) (b :: k) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments #
uncopower :: forall (a :: k) n (b :: k). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments #
Instances
Copowered LINEAR Source Comments # | |||||
Defined in Proarrow.Category.Instance.Linear Methods withObCopower :: forall (a :: LINEAR) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: LINEAR) (b :: LINEAR) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: LINEAR) n (b :: LINEAR). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # | |||||
Copowered POINTED Source Comments # | |||||
Defined in Proarrow.Category.Instance.PointedHask Associated Types
Methods withObCopower :: forall (a :: POINTED) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: POINTED) (b :: POINTED) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: POINTED) n (b :: POINTED). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # | |||||
Copowered () Source Comments # | |||||
Defined in Proarrow.Object.Copower Associated Types
| |||||
Copowered Type Source Comments # | |||||
Defined in Proarrow.Object.Copower Associated Types
| |||||
Powered k => Copowered (OPPOSITE k) Source Comments # | |||||
Defined in Proarrow.Category.Opposite Methods withObCopower :: forall (a :: OPPOSITE k) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: OPPOSITE k) (b :: OPPOSITE k) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: OPPOSITE k) n (b :: OPPOSITE k). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # | |||||
(CategoryOf j, CategoryOf k) => Copowered (j +-> k) Source Comments # | |||||
Defined in Proarrow.Object.Copower Methods withObCopower :: forall (a :: j +-> k) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: j +-> k) (b :: j +-> k) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: j +-> k) n (b :: j +-> k). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # | |||||
(Copowered j, Copowered k) => Copowered (j, k) Source Comments # | |||||
Defined in Proarrow.Object.Copower Methods withObCopower :: forall (a :: (j, k)) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: (j, k)) (b :: (j, k)) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: (j, k)) n (b :: (j, k)). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # | |||||
Copowered (k -> Type) Source Comments # | |||||
Defined in Proarrow.Category.Instance.Nat Methods withObCopower :: forall (a :: k -> Type) n r. Ob a => (Ob (n *. a) => r) -> r Source Comments # copower :: forall (a :: k -> Type) (b :: k -> Type) n. (Ob a, Ob b) => (n -> a ~> b) -> (n *. a) ~> b Source Comments # uncopower :: forall (a :: k -> Type) n (b :: k -> Type). Ob a => ((n *. a) ~> b) -> n -> a ~> b Source Comments # |
mapCobase :: forall k (a :: k) (b :: k) n. Copowered k => (a ~> b) -> (n *. a) ~> (n *. b) Source Comments #
mapCopower :: forall k (a :: k) n m. (Copowered k, Ob a) => (n -> m) -> (n *. a) ~> (m *. a) Source Comments #