Copyright | Copyright (C) 2015 Kyle Carter |
---|---|
License | BSD3 |
Maintainer | Kyle Carter <kylcarte@indiana.edu> |
Stability | experimental |
Portability | RankNTypes |
Safe Haskell | None |
Language | Haskell2010 |
Convenient type families for working with type-level Maybe
s.
- type family MaybeC (mc :: Maybe Constraint) :: Constraint where ...
- type family IsNothing (a :: Maybe k) :: Bool where ...
- nothingCong :: (a ~ b) :- (IsNothing a ~ IsNothing b)
- nothingNotJust :: (Nothing ~ Just a) :- Fail
- type family (f :: k -> l) <$> (a :: Maybe k) :: Maybe l where ...
- maybeFmapCong :: (f ~ g, a ~ b) :- ((f <$> a) ~ (g <$> b))
- type family (f :: Maybe (k -> l)) <&> (a :: k) :: Maybe l where ...
- maybePamfCong :: (f ~ g, a ~ b) :- ((f <&> a) ~ (g <&> b))
- type family (f :: Maybe (k -> l)) <*> (a :: Maybe k) :: Maybe l where ...
- maybeApCong :: (f ~ g, a ~ b) :- ((f <*> a) ~ (g <*> b))
- type family (a :: Maybe k) <|> (b :: Maybe k) :: Maybe k where ...
- maybeAltCong :: (a ~ c, b ~ d) :- ((a <|> b) ~ (c <|> d))
- type family FromJust (m :: Maybe k) :: k where ...
- fromJustCong :: (a ~ b) :- (FromJust a ~ FromJust b)
Documentation
type family MaybeC (mc :: Maybe Constraint) :: Constraint where ... Source #
Take a Maybe Constraint
to a Constraint
.
type family (f :: k -> l) <$> (a :: Maybe k) :: Maybe l where ... infixr 4 Source #
Map over a type-level Maybe
.