Safe Haskell | None |
---|---|
Language | Haskell98 |
- null :: Column (Nullable a)
- isNull :: Column (Nullable a) -> Column PGBool
- matchNullable :: Column b -> (Column a -> Column b) -> Column (Nullable a) -> Column b
- fromNullable :: Column a -> Column (Nullable a) -> Column a
- toNullable :: Column a -> Column (Nullable a)
- maybeToNullable :: Maybe (Column a) -> Column (Nullable a)
- unsafeCast :: String -> Column a -> Column b
- data Column a
- data Nullable a
- unsafeCoerce :: Column a -> Column b
- unsafeCoerceColumn :: Column a -> Column b
Documentation
matchNullable :: Column b -> (Column a -> Column b) -> Column (Nullable a) -> Column b Source
If the Column (Nullable a)
is NULL then return the Column b
otherwise map the underlying Column a
using the provided
function.
The Opaleye equivalent of the maybe
function.
fromNullable :: Column a -> Column (Nullable a) -> Column a Source
If the Column (Nullable a)
is NULL then return the provided
Column a
otherwise return the underlying Column a
.
The Opaleye equivalent of the fromMaybe
function
maybeToNullable :: Maybe (Column a) -> Column (Nullable a) Source
If the argument is Nothing
return NULL otherwise return the
provided value coerced to a nullable type.
unsafeCast :: String -> Column a -> Column b Source
Cast a column to any other type. This is safe for some conversions such as uuid to text.
The Num
and Fractional
instances for Column
a
are too
general. For example, they allow you to add two Column
String
s. This will be fixed in a subsequent release.
Default ViewColumnMaker String (Column a) | |
QueryRunnerColumnDefault a b => Default QueryRunner (Column a) b | |
Default Binaryspec (Column a) (Column a) | |
Default Unpackspec (Column a) (Column a) | |
Default Valuesspec (Column PGInt4) (Column PGInt4) | |
Default NullMaker (Column a) (Column (Nullable a)) | |
Default NullMaker (Column (Nullable a)) (Column (Nullable a)) | |
Default ColumnMaker (Column a) (Column a) | |
Default Distinctspec (Column a) (Column a) | |
(PGNum a, PGFractional a) => Fractional (Column a) | |
PGNum a => Num (Column a) | |
Show (Column a) |
unsafeCoerce :: Column a -> Column b Source
Deprecated: Use unsafeCoerceColumn instead
unsafeCoerceColumn :: Column a -> Column b Source