rel8-internal
Safe HaskellNone
LanguageHaskell2010

Rel8.Internal.Schema.Context.Nullify

Documentation

data Nullifiability (context :: Context) where Source #

data NonNullifiability (context :: Context) where Source #

Constructors

NField :: forall table. NonNullifiability (Field table) 
NResult :: NonNullifiability Identity 

nullifiableOrNot :: forall (context :: Context). SContext context -> Either (NonNullifiability context) (Nullifiability context) Source #

absurd :: forall (context :: Context) a. Nullifiability context -> NonNullifiability context -> a Source #

class Nullifiable (context :: Context) Source #

Minimal complete definition

nullifiability

guarder :: SContext context -> context tag -> (tag -> Bool) -> (Expr tag -> Expr Bool) -> context (Maybe a) -> context (Maybe a) Source #

nullifier :: Nullifiability context -> Spec a -> context a -> context (Nullify a) Source #

unnullifier :: Nullifiability context -> Spec a -> context (Nullify a) -> context a Source #