| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Rel8.Internal.Schema.Null
Synopsis
- type Nullify a = Maybe (Unnullify a)
- type Unnullify a = Unnullify' (IsMaybe a) a
- class (Nullable a, IsMaybe a ~ 'False) => NotNull a
- class IsMaybe a ~ IsMaybe b => Homonullable a b
- data Nullity a where
- class Nullable' (IsMaybe a) a => Nullable a
- nullable :: Nullable a => Nullity a
- class (constraint (Unnullify a), Nullable a) => Sql (constraint :: Type -> Constraint) a
Documentation
class (Nullable a, IsMaybe a ~ 'False) => NotNull a Source #
nullify a means a cannot take null as a value.
class IsMaybe a ~ IsMaybe b => Homonullable a b Source #
Homonullable a b means that both a and b can be null, or neither
a or b can be null.
Instances
| IsMaybe a ~ IsMaybe b => Homonullable a b Source # | |
Defined in Rel8.Internal.Schema.Null | |
class Nullable' (IsMaybe a) a => Nullable a Source #
Nullable a means that rel8 is able to check if the type a is a
type that can take null values or not.
Instances
| Nullable' (IsMaybe a) a => Nullable a Source # | |
Defined in Rel8.Internal.Schema.Null | |
class (constraint (Unnullify a), Nullable a) => Sql (constraint :: Type -> Constraint) a Source #
The Sql type class describes both null and not null database values,
constrained by a specific class.
For example, if you see Sql DBEq a, this means any database type that
supports equality, and a can either be exactly an a, or it could also be
Maybe a.