Type.Family.Either
type family EitherC (ec :: Either k Constraint) :: Constraint where ...
type family IsLeft (a :: Either k l) :: Bool where ...
type family IsRight (a :: Either k l) :: Bool where ...
leftCong
rightCong
leftNotRight
type family (f :: k -> l) <$> (a :: Either m k) :: Either m l where ...
eitherFmapCong
type family (f :: Either m (k -> l)) <&> (a :: k) :: Either m l where ...
eitherPamfCong
type family (f :: Either m (k -> l)) <*> (a :: Either m k) :: Either m l where ...
eitherApCong
type family (a :: Either m k) <|> (b :: Either m k) :: Either m k where ...
eitherAltCong
type family FromLeft (e :: Either k l) :: k where ...
type family FromRight (e :: Either k l) :: l where ...
fromLeftCong
fromRightCong