Data.Singletons.Maybe

data family Sing a

type SMaybe z

Singletons from Data.Maybe

type family Maybe_ a a a :: b

sMaybe_

type family IsJust a :: Bool

sIsJust

type family IsNothing a :: Bool

sIsNothing

type family FromJust a :: a

sFromJust

type family FromMaybe a a :: a

sFromMaybe

type family MaybeToList a :: [a]

sMaybeToList

type family ListToMaybe a :: Maybe a

sListToMaybe

type family CatMaybes a :: [a]

sCatMaybes

type family MapMaybe a a :: [b]

sMapMaybe