| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Proarrow.Object.Terminal
Contents
Synopsis
- class (CategoryOf k, Ob (TerminalObject :: k)) => HasTerminalObject k where
- type TerminalObject :: k
- terminate :: forall (a :: k). Ob a => a ~> (TerminalObject :: k)
- terminate' :: forall {k} (a :: k) (a' :: k). HasTerminalObject k => (a ~> a') -> a ~> (TerminalObject :: k)
- type El (a :: k) = (TerminalObject :: k) ~> a
- class ((Unit :: k) ~ (TerminalObject :: k), HasTerminalObject k, Monoidal k) => Semicartesian k
- data family TermF :: k
Documentation
class (CategoryOf k, Ob (TerminalObject :: k)) => HasTerminalObject k where Source Github #
Associated Types
type TerminalObject :: k Source Github #
Instances
terminate' :: forall {k} (a :: k) (a' :: k). HasTerminalObject k => (a ~> a') -> a ~> (TerminalObject :: k) Source Github #
class ((Unit :: k) ~ (TerminalObject :: k), HasTerminalObject k, Monoidal k) => Semicartesian k Source Github #
Instances
| ((Unit :: k) ~ (TerminalObject :: k), HasTerminalObject k, Monoidal k) => Semicartesian k Source Github # | |
Defined in Proarrow.Object.Terminal | |
Orphan instances
| (HasTerminalObject k, CategoryOf j) => Representable (TerminalProfunctor :: k -> j -> Type) Source Github # | |
Methods index :: forall (a :: k) (b :: j). TerminalProfunctor a b -> a ~> ((TerminalProfunctor :: k -> j -> Type) % b) Source Github # tabulate :: forall (b :: j) (a :: k). Ob b => (a ~> ((TerminalProfunctor :: k -> j -> Type) % b)) -> TerminalProfunctor a b Source Github # repMap :: forall (a :: j) (b :: j). (a ~> b) -> ((TerminalProfunctor :: k -> j -> Type) % a) ~> ((TerminalProfunctor :: k -> j -> Type) % b) Source Github # trivialRep :: forall (a :: j). Ob a => TerminalProfunctor ((TerminalProfunctor :: k -> j -> Type) % a) a Source Github # | |