{-# LANGUAGE CPP #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RankNTypes #-}
module Database.Persist.Monad.Shim where
import Control.Monad.IO.Class (MonadIO)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Resource (MonadResource)
import Data.Acquire (Acquire, allocateAcquire)
import Data.Conduit (ConduitM)
import Data.Int (Int64)
import Data.Map (Map)
import Data.Text (Text)
import Data.Typeable (Typeable)
import Data.Void (Void)
import Database.Persist.Sql hiding (pattern Update)
import GHC.Stack (HasCallStack)
import Database.Persist.Monad.Class (MonadSqlQuery(..))
import Database.Persist.Monad.SqlQueryRep (SqlQueryRep(..))
{-# ANN module "HLint: ignore" #-}
get
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m (Maybe record)
get :: Key record -> m (Maybe record)
get Key record
a1 = SqlQueryRep record (Maybe record) -> m (Maybe record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe record) -> m (Maybe record))
-> SqlQueryRep record (Maybe record) -> m (Maybe record)
forall a b. (a -> b) -> a -> b
$ Key record -> SqlQueryRep record (Maybe record)
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> SqlQueryRep record (Maybe record)
Get Key record
a1
getMany
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Key record] -> m (Map (Key record) record)
getMany :: [Key record] -> m (Map (Key record) record)
getMany [Key record]
a1 = SqlQueryRep record (Map (Key record) record)
-> m (Map (Key record) record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Map (Key record) record)
-> m (Map (Key record) record))
-> SqlQueryRep record (Map (Key record) record)
-> m (Map (Key record) record)
forall a b. (a -> b) -> a -> b
$ [Key record] -> SqlQueryRep record (Map (Key record) record)
forall record.
PersistRecordBackend record SqlBackend =>
[Key record] -> SqlQueryRep record (Map (Key record) record)
GetMany [Key record]
a1
getJust
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m record
getJust :: Key record -> m record
getJust Key record
a1 = SqlQueryRep record record -> m record
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record record -> m record)
-> SqlQueryRep record record -> m record
forall a b. (a -> b) -> a -> b
$ Key record -> SqlQueryRep record record
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> SqlQueryRep record record
GetJust Key record
a1
getJustEntity
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m (Entity record)
getJustEntity :: Key record -> m (Entity record)
getJustEntity Key record
a1 = SqlQueryRep record (Entity record) -> m (Entity record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Entity record) -> m (Entity record))
-> SqlQueryRep record (Entity record) -> m (Entity record)
forall a b. (a -> b) -> a -> b
$ Key record -> SqlQueryRep record (Entity record)
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> SqlQueryRep record (Entity record)
GetJustEntity Key record
a1
getEntity
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m (Maybe (Entity record))
getEntity :: Key record -> m (Maybe (Entity record))
getEntity Key record
a1 = SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record)))
-> SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall a b. (a -> b) -> a -> b
$ Key record -> SqlQueryRep record (Maybe (Entity record))
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> SqlQueryRep record (Maybe (Entity record))
GetEntity Key record
a1
belongsTo
:: (PersistEntity record1, PersistRecordBackend record2 SqlBackend, Typeable record1, Typeable record2, MonadSqlQuery m)
=> (record1 -> Maybe (Key record2)) -> record1 -> m (Maybe record2)
belongsTo :: (record1 -> Maybe (Key record2)) -> record1 -> m (Maybe record2)
belongsTo record1 -> Maybe (Key record2)
a1 record1
a2 = SqlQueryRep (record1, record2) (Maybe record2) -> m (Maybe record2)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep (record1, record2) (Maybe record2)
-> m (Maybe record2))
-> SqlQueryRep (record1, record2) (Maybe record2)
-> m (Maybe record2)
forall a b. (a -> b) -> a -> b
$ (record1 -> Maybe (Key record2))
-> record1 -> SqlQueryRep (record1, record2) (Maybe record2)
forall record1 record1.
(PersistEntity record1, PersistRecordBackend record1 SqlBackend) =>
(record1 -> Maybe (Key record1))
-> record1 -> SqlQueryRep (record1, record1) (Maybe record1)
BelongsTo record1 -> Maybe (Key record2)
a1 record1
a2
belongsToJust
:: (PersistEntity record1, PersistRecordBackend record2 SqlBackend, Typeable record1, Typeable record2, MonadSqlQuery m)
=> (record1 -> Key record2) -> record1 -> m record2
belongsToJust :: (record1 -> Key record2) -> record1 -> m record2
belongsToJust record1 -> Key record2
a1 record1
a2 = SqlQueryRep (record1, record2) record2 -> m record2
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep (record1, record2) record2 -> m record2)
-> SqlQueryRep (record1, record2) record2 -> m record2
forall a b. (a -> b) -> a -> b
$ (record1 -> Key record2)
-> record1 -> SqlQueryRep (record1, record2) record2
forall record1 record2.
(PersistEntity record1, PersistRecordBackend record2 SqlBackend) =>
(record1 -> Key record2)
-> record1 -> SqlQueryRep (record1, record2) record2
BelongsToJust record1 -> Key record2
a1 record1
a2
insert
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Key record)
insert :: record -> m (Key record)
insert record
a1 = SqlQueryRep record (Key record) -> m (Key record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Key record) -> m (Key record))
-> SqlQueryRep record (Key record) -> m (Key record)
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Key record)
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record (Key record)
Insert record
a1
insert_
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m ()
insert_ :: record -> m ()
insert_ record
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record ()
Insert_ record
a1
insertMany
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [record] -> m [Key record]
insertMany :: [record] -> m [Key record]
insertMany [record]
a1 = SqlQueryRep record [Key record] -> m [Key record]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record [Key record] -> m [Key record])
-> SqlQueryRep record [Key record] -> m [Key record]
forall a b. (a -> b) -> a -> b
$ [record] -> SqlQueryRep record [Key record]
forall record.
PersistRecordBackend record SqlBackend =>
[record] -> SqlQueryRep record [Key record]
InsertMany [record]
a1
insertMany_
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [record] -> m ()
insertMany_ :: [record] -> m ()
insertMany_ [record]
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[record] -> SqlQueryRep record ()
InsertMany_ [record]
a1
insertEntityMany
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Entity record] -> m ()
insertEntityMany :: [Entity record] -> m ()
insertEntityMany [Entity record]
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [Entity record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[Entity record] -> SqlQueryRep record ()
InsertEntityMany [Entity record]
a1
insertKey
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> record -> m ()
insertKey :: Key record -> record -> m ()
insertKey Key record
a1 record
a2 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Key record -> record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> record -> SqlQueryRep record ()
InsertKey Key record
a1 record
a2
repsert
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> record -> m ()
repsert :: Key record -> record -> m ()
repsert Key record
a1 record
a2 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Key record -> record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> record -> SqlQueryRep record ()
Repsert Key record
a1 record
a2
repsertMany
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [(Key record, record)] -> m ()
repsertMany :: [(Key record, record)] -> m ()
repsertMany [(Key record, record)]
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [(Key record, record)] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[(Key record, record)] -> SqlQueryRep record ()
RepsertMany [(Key record, record)]
a1
replace
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> record -> m ()
replace :: Key record -> record -> m ()
replace Key record
a1 record
a2 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Key record -> record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> record -> SqlQueryRep record ()
Replace Key record
a1 record
a2
delete
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m ()
delete :: Key record -> m ()
delete Key record
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Key record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> SqlQueryRep record ()
Delete Key record
a1
update
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> [Update record] -> m ()
update :: Key record -> [Update record] -> m ()
update Key record
a1 [Update record]
a2 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Key record -> [Update record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> [Update record] -> SqlQueryRep record ()
Update Key record
a1 [Update record]
a2
updateGet
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> [Update record] -> m record
updateGet :: Key record -> [Update record] -> m record
updateGet Key record
a1 [Update record]
a2 = SqlQueryRep record record -> m record
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record record -> m record)
-> SqlQueryRep record record -> m record
forall a b. (a -> b) -> a -> b
$ Key record -> [Update record] -> SqlQueryRep record record
forall record.
PersistRecordBackend record SqlBackend =>
Key record -> [Update record] -> SqlQueryRep record record
UpdateGet Key record
a1 [Update record]
a2
insertEntity
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Entity record)
insertEntity :: record -> m (Entity record)
insertEntity record
a1 = SqlQueryRep record (Entity record) -> m (Entity record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Entity record) -> m (Entity record))
-> SqlQueryRep record (Entity record) -> m (Entity record)
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Entity record)
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record (Entity record)
InsertEntity record
a1
insertRecord
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m record
insertRecord :: record -> m record
insertRecord record
a1 = SqlQueryRep record record -> m record
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record record -> m record)
-> SqlQueryRep record record -> m record
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record record
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record record
InsertRecord record
a1
getBy
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Unique record -> m (Maybe (Entity record))
getBy :: Unique record -> m (Maybe (Entity record))
getBy Unique record
a1 = SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record)))
-> SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall a b. (a -> b) -> a -> b
$ Unique record -> SqlQueryRep record (Maybe (Entity record))
forall record.
PersistRecordBackend record SqlBackend =>
Unique record -> SqlQueryRep record (Maybe (Entity record))
GetBy Unique record
a1
#if MIN_VERSION_persistent(2,10,0)
getByValue
:: (PersistRecordBackend record SqlBackend, AtLeastOneUniqueKey record, Typeable record, MonadSqlQuery m)
=> record -> m (Maybe (Entity record))
getByValue :: record -> m (Maybe (Entity record))
getByValue record
a1 = SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record)))
-> SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Maybe (Entity record))
forall record.
(PersistRecordBackend record SqlBackend,
AtLeastOneUniqueKey record) =>
record -> SqlQueryRep record (Maybe (Entity record))
GetByValue record
a1
#endif
#if !MIN_VERSION_persistent(2,10,0)
getByValue
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Maybe (Entity record))
getByValue a1 = runQueryRep $ GetByValue a1
#endif
checkUnique
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Maybe (Unique record))
checkUnique :: record -> m (Maybe (Unique record))
checkUnique record
a1 = SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record)))
-> SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Maybe (Unique record))
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record (Maybe (Unique record))
CheckUnique record
a1
#if MIN_VERSION_persistent(2,11,0)
checkUniqueUpdateable
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Entity record -> m (Maybe (Unique record))
checkUniqueUpdateable :: Entity record -> m (Maybe (Unique record))
checkUniqueUpdateable Entity record
a1 = SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record)))
-> SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall a b. (a -> b) -> a -> b
$ Entity record -> SqlQueryRep record (Maybe (Unique record))
forall record.
PersistRecordBackend record SqlBackend =>
Entity record -> SqlQueryRep record (Maybe (Unique record))
CheckUniqueUpdateable Entity record
a1
#endif
deleteBy
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Unique record -> m ()
deleteBy :: Unique record -> m ()
deleteBy Unique record
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ Unique record -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
Unique record -> SqlQueryRep record ()
DeleteBy Unique record
a1
insertUnique
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Maybe (Key record))
insertUnique :: record -> m (Maybe (Key record))
insertUnique record
a1 = SqlQueryRep record (Maybe (Key record)) -> m (Maybe (Key record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Key record)) -> m (Maybe (Key record)))
-> SqlQueryRep record (Maybe (Key record))
-> m (Maybe (Key record))
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Maybe (Key record))
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record (Maybe (Key record))
InsertUnique record
a1
#if MIN_VERSION_persistent(2,10,0)
upsert
:: (PersistRecordBackend record SqlBackend, OnlyOneUniqueKey record, Typeable record, MonadSqlQuery m)
=> record -> [Update record] -> m (Entity record)
upsert :: record -> [Update record] -> m (Entity record)
upsert record
a1 [Update record]
a2 = SqlQueryRep record (Entity record) -> m (Entity record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Entity record) -> m (Entity record))
-> SqlQueryRep record (Entity record) -> m (Entity record)
forall a b. (a -> b) -> a -> b
$ record -> [Update record] -> SqlQueryRep record (Entity record)
forall record.
(PersistRecordBackend record SqlBackend,
OnlyOneUniqueKey record) =>
record -> [Update record] -> SqlQueryRep record (Entity record)
Upsert record
a1 [Update record]
a2
#endif
#if !MIN_VERSION_persistent(2,10,0)
upsert
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> [Update record] -> m (Entity record)
upsert a1 a2 = runQueryRep $ Upsert a1 a2
#endif
upsertBy
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> Unique record -> record -> [Update record] -> m (Entity record)
upsertBy :: Unique record -> record -> [Update record] -> m (Entity record)
upsertBy Unique record
a1 record
a2 [Update record]
a3 = SqlQueryRep record (Entity record) -> m (Entity record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Entity record) -> m (Entity record))
-> SqlQueryRep record (Entity record) -> m (Entity record)
forall a b. (a -> b) -> a -> b
$ Unique record
-> record -> [Update record] -> SqlQueryRep record (Entity record)
forall record.
PersistRecordBackend record SqlBackend =>
Unique record
-> record -> [Update record] -> SqlQueryRep record (Entity record)
UpsertBy Unique record
a1 record
a2 [Update record]
a3
putMany
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [record] -> m ()
putMany :: [record] -> m ()
putMany [record]
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[record] -> SqlQueryRep record ()
PutMany [record]
a1
#if MIN_VERSION_persistent(2,10,0)
insertBy
:: (PersistRecordBackend record SqlBackend, AtLeastOneUniqueKey record, Typeable record, MonadSqlQuery m)
=> record -> m (Either (Entity record) (Key record))
insertBy :: record -> m (Either (Entity record) (Key record))
insertBy record
a1 = SqlQueryRep record (Either (Entity record) (Key record))
-> m (Either (Entity record) (Key record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Either (Entity record) (Key record))
-> m (Either (Entity record) (Key record)))
-> SqlQueryRep record (Either (Entity record) (Key record))
-> m (Either (Entity record) (Key record))
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Either (Entity record) (Key record))
forall record.
(PersistRecordBackend record SqlBackend,
AtLeastOneUniqueKey record) =>
record -> SqlQueryRep record (Either (Entity record) (Key record))
InsertBy record
a1
#endif
#if !MIN_VERSION_persistent(2,10,0)
insertBy
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Either (Entity record) (Key record))
insertBy a1 = runQueryRep $ InsertBy a1
#endif
insertUniqueEntity
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Maybe (Entity record))
insertUniqueEntity :: record -> m (Maybe (Entity record))
insertUniqueEntity record
a1 = SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record)))
-> SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Maybe (Entity record))
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record (Maybe (Entity record))
InsertUniqueEntity record
a1
replaceUnique
:: (PersistRecordBackend record SqlBackend, Eq (Unique record), Eq record, Typeable record, MonadSqlQuery m)
=> Key record -> record -> m (Maybe (Unique record))
replaceUnique :: Key record -> record -> m (Maybe (Unique record))
replaceUnique Key record
a1 record
a2 = SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record)))
-> SqlQueryRep record (Maybe (Unique record))
-> m (Maybe (Unique record))
forall a b. (a -> b) -> a -> b
$ Key record -> record -> SqlQueryRep record (Maybe (Unique record))
forall record.
(PersistRecordBackend record SqlBackend, Eq (Unique record),
Eq record) =>
Key record -> record -> SqlQueryRep record (Maybe (Unique record))
ReplaceUnique Key record
a1 record
a2
#if MIN_VERSION_persistent(2,10,0)
onlyUnique
:: (PersistRecordBackend record SqlBackend, OnlyOneUniqueKey record, Typeable record, MonadSqlQuery m)
=> record -> m (Unique record)
onlyUnique :: record -> m (Unique record)
onlyUnique record
a1 = SqlQueryRep record (Unique record) -> m (Unique record)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Unique record) -> m (Unique record))
-> SqlQueryRep record (Unique record) -> m (Unique record)
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record (Unique record)
forall record.
(PersistRecordBackend record SqlBackend,
OnlyOneUniqueKey record) =>
record -> SqlQueryRep record (Unique record)
OnlyUnique record
a1
#endif
#if !MIN_VERSION_persistent(2,10,0)
onlyUnique
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m (Unique record)
onlyUnique a1 = runQueryRep $ OnlyUnique a1
#endif
selectSourceRes
:: (MonadIO m2, PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> m (Acquire (ConduitM () (Entity record) m2 ()))
selectSourceRes :: [Filter record]
-> [SelectOpt record]
-> m (Acquire (ConduitM () (Entity record) m2 ()))
selectSourceRes [Filter record]
a1 [SelectOpt record]
a2 = SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
-> m (Acquire (ConduitM () (Entity record) m2 ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
-> m (Acquire (ConduitM () (Entity record) m2 ())))
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
-> m (Acquire (ConduitM () (Entity record) m2 ()))
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
forall (m2 :: * -> *) record.
(MonadIO m2, PersistRecordBackend record SqlBackend) =>
[Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
SelectSourceRes [Filter record]
a1 [SelectOpt record]
a2
selectFirst
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> m (Maybe (Entity record))
selectFirst :: [Filter record] -> [SelectOpt record] -> m (Maybe (Entity record))
selectFirst [Filter record]
a1 [SelectOpt record]
a2 = SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record)))
-> SqlQueryRep record (Maybe (Entity record))
-> m (Maybe (Entity record))
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record] -> SqlQueryRep record (Maybe (Entity record))
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record]
-> [SelectOpt record] -> SqlQueryRep record (Maybe (Entity record))
SelectFirst [Filter record]
a1 [SelectOpt record]
a2
selectKeysRes
:: (MonadIO m2, PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> m (Acquire (ConduitM () (Key record) m2 ()))
selectKeysRes :: [Filter record]
-> [SelectOpt record]
-> m (Acquire (ConduitM () (Key record) m2 ()))
selectKeysRes [Filter record]
a1 [SelectOpt record]
a2 = SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
-> m (Acquire (ConduitM () (Key record) m2 ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
-> m (Acquire (ConduitM () (Key record) m2 ())))
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
-> m (Acquire (ConduitM () (Key record) m2 ()))
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
forall (m2 :: * -> *) record.
(MonadIO m2, PersistRecordBackend record SqlBackend) =>
[Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
SelectKeysRes [Filter record]
a1 [SelectOpt record]
a2
count
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> m Int
count :: [Filter record] -> m Int
count [Filter record]
a1 = SqlQueryRep record Int -> m Int
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Int -> m Int)
-> SqlQueryRep record Int -> m Int
forall a b. (a -> b) -> a -> b
$ [Filter record] -> SqlQueryRep record Int
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> SqlQueryRep record Int
Count [Filter record]
a1
#if MIN_VERSION_persistent(2,11,0)
exists
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> m Bool
exists :: [Filter record] -> m Bool
exists [Filter record]
a1 = SqlQueryRep record Bool -> m Bool
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Bool -> m Bool)
-> SqlQueryRep record Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ [Filter record] -> SqlQueryRep record Bool
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> SqlQueryRep record Bool
Exists [Filter record]
a1
#endif
selectSource
:: (PersistRecordBackend record SqlBackend, MonadResource m, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> ConduitM () (Entity record) m ()
selectSource :: [Filter record]
-> [SelectOpt record] -> ConduitM () (Entity record) m ()
selectSource [Filter record]
a1 [SelectOpt record]
a2 = m (Acquire (ConduitM () (Entity record) m ()))
-> ConduitM () (Entity record) m ()
forall (m :: * -> *) i o a.
MonadResource m =>
m (Acquire (ConduitM i o m a)) -> ConduitM i o m a
fromAcquire (m (Acquire (ConduitM () (Entity record) m ()))
-> ConduitM () (Entity record) m ())
-> m (Acquire (ConduitM () (Entity record) m ()))
-> ConduitM () (Entity record) m ()
forall a b. (a -> b) -> a -> b
$ SqlQueryRep record (Acquire (ConduitM () (Entity record) m ()))
-> m (Acquire (ConduitM () (Entity record) m ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Acquire (ConduitM () (Entity record) m ()))
-> m (Acquire (ConduitM () (Entity record) m ())))
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m ()))
-> m (Acquire (ConduitM () (Entity record) m ()))
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m ()))
forall (m2 :: * -> *) record.
(MonadIO m2, PersistRecordBackend record SqlBackend) =>
[Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Entity record) m2 ()))
SelectSourceRes [Filter record]
a1 [SelectOpt record]
a2
selectKeys
:: (PersistRecordBackend record SqlBackend, MonadResource m, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> ConduitM () (Key record) m ()
selectKeys :: [Filter record]
-> [SelectOpt record] -> ConduitM () (Key record) m ()
selectKeys [Filter record]
a1 [SelectOpt record]
a2 = m (Acquire (ConduitM () (Key record) m ()))
-> ConduitM () (Key record) m ()
forall (m :: * -> *) i o a.
MonadResource m =>
m (Acquire (ConduitM i o m a)) -> ConduitM i o m a
fromAcquire (m (Acquire (ConduitM () (Key record) m ()))
-> ConduitM () (Key record) m ())
-> m (Acquire (ConduitM () (Key record) m ()))
-> ConduitM () (Key record) m ()
forall a b. (a -> b) -> a -> b
$ SqlQueryRep record (Acquire (ConduitM () (Key record) m ()))
-> m (Acquire (ConduitM () (Key record) m ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record (Acquire (ConduitM () (Key record) m ()))
-> m (Acquire (ConduitM () (Key record) m ())))
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m ()))
-> m (Acquire (ConduitM () (Key record) m ()))
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m ()))
forall (m2 :: * -> *) record.
(MonadIO m2, PersistRecordBackend record SqlBackend) =>
[Filter record]
-> [SelectOpt record]
-> SqlQueryRep record (Acquire (ConduitM () (Key record) m2 ()))
SelectKeysRes [Filter record]
a1 [SelectOpt record]
a2
selectList
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> m [Entity record]
selectList :: [Filter record] -> [SelectOpt record] -> m [Entity record]
selectList [Filter record]
a1 [SelectOpt record]
a2 = SqlQueryRep record [Entity record] -> m [Entity record]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record [Entity record] -> m [Entity record])
-> SqlQueryRep record [Entity record] -> m [Entity record]
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record] -> SqlQueryRep record [Entity record]
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record]
-> [SelectOpt record] -> SqlQueryRep record [Entity record]
SelectList [Filter record]
a1 [SelectOpt record]
a2
selectKeysList
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [SelectOpt record] -> m [Key record]
selectKeysList :: [Filter record] -> [SelectOpt record] -> m [Key record]
selectKeysList [Filter record]
a1 [SelectOpt record]
a2 = SqlQueryRep record [Key record] -> m [Key record]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record [Key record] -> m [Key record])
-> SqlQueryRep record [Key record] -> m [Key record]
forall a b. (a -> b) -> a -> b
$ [Filter record]
-> [SelectOpt record] -> SqlQueryRep record [Key record]
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record]
-> [SelectOpt record] -> SqlQueryRep record [Key record]
SelectKeysList [Filter record]
a1 [SelectOpt record]
a2
updateWhere
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [Update record] -> m ()
updateWhere :: [Filter record] -> [Update record] -> m ()
updateWhere [Filter record]
a1 [Update record]
a2 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [Filter record] -> [Update record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> [Update record] -> SqlQueryRep record ()
UpdateWhere [Filter record]
a1 [Update record]
a2
deleteWhere
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> m ()
deleteWhere :: [Filter record] -> m ()
deleteWhere [Filter record]
a1 = SqlQueryRep record () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record () -> m ()) -> SqlQueryRep record () -> m ()
forall a b. (a -> b) -> a -> b
$ [Filter record] -> SqlQueryRep record ()
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> SqlQueryRep record ()
DeleteWhere [Filter record]
a1
deleteWhereCount
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> m Int64
deleteWhereCount :: [Filter record] -> m Int64
deleteWhereCount [Filter record]
a1 = SqlQueryRep record Int64 -> m Int64
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Int64 -> m Int64)
-> SqlQueryRep record Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ [Filter record] -> SqlQueryRep record Int64
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> SqlQueryRep record Int64
DeleteWhereCount [Filter record]
a1
updateWhereCount
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> [Update record] -> m Int64
updateWhereCount :: [Filter record] -> [Update record] -> m Int64
updateWhereCount [Filter record]
a1 [Update record]
a2 = SqlQueryRep record Int64 -> m Int64
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Int64 -> m Int64)
-> SqlQueryRep record Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ [Filter record] -> [Update record] -> SqlQueryRep record Int64
forall record.
PersistRecordBackend record SqlBackend =>
[Filter record] -> [Update record] -> SqlQueryRep record Int64
UpdateWhereCount [Filter record]
a1 [Update record]
a2
#if !MIN_VERSION_persistent(2,13,0)
deleteCascade
:: (DeleteCascade record SqlBackend, Typeable record, MonadSqlQuery m)
=> Key record -> m ()
deleteCascade a1 = runQueryRep $ DeleteCascade a1
#endif
#if !MIN_VERSION_persistent(2,13,0)
deleteCascadeWhere
:: (DeleteCascade record SqlBackend, Typeable record, MonadSqlQuery m)
=> [Filter record] -> m ()
deleteCascadeWhere a1 = runQueryRep $ DeleteCascadeWhere a1
#endif
parseMigration
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m (Either [Text] CautiousMigration)
parseMigration :: Migration -> m (Either [Text] CautiousMigration)
parseMigration Migration
a1 = SqlQueryRep Void (Either [Text] CautiousMigration)
-> m (Either [Text] CautiousMigration)
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void (Either [Text] CautiousMigration)
-> m (Either [Text] CautiousMigration))
-> SqlQueryRep Void (Either [Text] CautiousMigration)
-> m (Either [Text] CautiousMigration)
forall a b. (a -> b) -> a -> b
$ HasCallStack =>
Migration -> SqlQueryRep Void (Either [Text] CautiousMigration)
Migration -> SqlQueryRep Void (Either [Text] CautiousMigration)
ParseMigration Migration
a1
parseMigration'
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m CautiousMigration
parseMigration' :: Migration -> m CautiousMigration
parseMigration' Migration
a1 = SqlQueryRep Void CautiousMigration -> m CautiousMigration
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void CautiousMigration -> m CautiousMigration)
-> SqlQueryRep Void CautiousMigration -> m CautiousMigration
forall a b. (a -> b) -> a -> b
$ HasCallStack => Migration -> SqlQueryRep Void CautiousMigration
Migration -> SqlQueryRep Void CautiousMigration
ParseMigration' Migration
a1
printMigration
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m ()
printMigration :: Migration -> m ()
printMigration Migration
a1 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ HasCallStack => Migration -> SqlQueryRep Void ()
Migration -> SqlQueryRep Void ()
PrintMigration Migration
a1
showMigration
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m [Text]
showMigration :: Migration -> m [Text]
showMigration Migration
a1 = SqlQueryRep Void [Text] -> m [Text]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [Text] -> m [Text])
-> SqlQueryRep Void [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ HasCallStack => Migration -> SqlQueryRep Void [Text]
Migration -> SqlQueryRep Void [Text]
ShowMigration Migration
a1
getMigration
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m [Sql]
getMigration :: Migration -> m [Text]
getMigration Migration
a1 = SqlQueryRep Void [Text] -> m [Text]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [Text] -> m [Text])
-> SqlQueryRep Void [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ HasCallStack => Migration -> SqlQueryRep Void [Text]
Migration -> SqlQueryRep Void [Text]
GetMigration Migration
a1
runMigration
:: (MonadSqlQuery m)
=> Migration -> m ()
runMigration :: Migration -> m ()
runMigration Migration
a1 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ Migration -> SqlQueryRep Void ()
RunMigration Migration
a1
#if MIN_VERSION_persistent(2,10,2)
runMigrationQuiet
:: (MonadSqlQuery m)
=> Migration -> m [Text]
runMigrationQuiet :: Migration -> m [Text]
runMigrationQuiet Migration
a1 = SqlQueryRep Void [Text] -> m [Text]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [Text] -> m [Text])
-> SqlQueryRep Void [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ Migration -> SqlQueryRep Void [Text]
RunMigrationQuiet Migration
a1
#endif
runMigrationSilent
:: (MonadSqlQuery m)
=> Migration -> m [Text]
runMigrationSilent :: Migration -> m [Text]
runMigrationSilent Migration
a1 = SqlQueryRep Void [Text] -> m [Text]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [Text] -> m [Text])
-> SqlQueryRep Void [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ Migration -> SqlQueryRep Void [Text]
RunMigrationSilent Migration
a1
runMigrationUnsafe
:: (MonadSqlQuery m)
=> Migration -> m ()
runMigrationUnsafe :: Migration -> m ()
runMigrationUnsafe Migration
a1 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ Migration -> SqlQueryRep Void ()
RunMigrationUnsafe Migration
a1
#if MIN_VERSION_persistent(2,10,2)
runMigrationUnsafeQuiet
:: (HasCallStack, MonadSqlQuery m)
=> Migration -> m [Text]
runMigrationUnsafeQuiet :: Migration -> m [Text]
runMigrationUnsafeQuiet Migration
a1 = SqlQueryRep Void [Text] -> m [Text]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [Text] -> m [Text])
-> SqlQueryRep Void [Text] -> m [Text]
forall a b. (a -> b) -> a -> b
$ HasCallStack => Migration -> SqlQueryRep Void [Text]
Migration -> SqlQueryRep Void [Text]
RunMigrationUnsafeQuiet Migration
a1
#endif
getFieldName
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> EntityField record typ -> m Text
getFieldName :: EntityField record typ -> m Text
getFieldName EntityField record typ
a1 = SqlQueryRep record Text -> m Text
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Text -> m Text)
-> SqlQueryRep record Text -> m Text
forall a b. (a -> b) -> a -> b
$ EntityField record typ -> SqlQueryRep record Text
forall record typ.
PersistRecordBackend record SqlBackend =>
EntityField record typ -> SqlQueryRep record Text
GetFieldName EntityField record typ
a1
getTableName
:: (PersistRecordBackend record SqlBackend, Typeable record, MonadSqlQuery m)
=> record -> m Text
getTableName :: record -> m Text
getTableName record
a1 = SqlQueryRep record Text -> m Text
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep record Text -> m Text)
-> SqlQueryRep record Text -> m Text
forall a b. (a -> b) -> a -> b
$ record -> SqlQueryRep record Text
forall record.
PersistRecordBackend record SqlBackend =>
record -> SqlQueryRep record Text
GetTableName record
a1
withRawQuery
:: (MonadSqlQuery m)
=> Text -> [PersistValue] -> ConduitM [PersistValue] Void IO a -> m a
withRawQuery :: Text -> [PersistValue] -> ConduitM [PersistValue] Void IO a -> m a
withRawQuery Text
a1 [PersistValue]
a2 ConduitM [PersistValue] Void IO a
a3 = SqlQueryRep Void a -> m a
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void a -> m a) -> SqlQueryRep Void a -> m a
forall a b. (a -> b) -> a -> b
$ Text
-> [PersistValue]
-> ConduitM [PersistValue] Void IO a
-> SqlQueryRep Void a
forall a.
Text
-> [PersistValue]
-> ConduitM [PersistValue] Void IO a
-> SqlQueryRep Void a
WithRawQuery Text
a1 [PersistValue]
a2 ConduitM [PersistValue] Void IO a
a3
rawQueryRes
:: (MonadIO m2, MonadSqlQuery m)
=> Text -> [PersistValue] -> m (Acquire (ConduitM () [PersistValue] m2 ()))
rawQueryRes :: Text
-> [PersistValue] -> m (Acquire (ConduitM () [PersistValue] m2 ()))
rawQueryRes Text
a1 [PersistValue]
a2 = SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
-> m (Acquire (ConduitM () [PersistValue] m2 ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
-> m (Acquire (ConduitM () [PersistValue] m2 ())))
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
-> m (Acquire (ConduitM () [PersistValue] m2 ()))
forall a b. (a -> b) -> a -> b
$ Text
-> [PersistValue]
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
forall (m2 :: * -> *).
MonadIO m2 =>
Text
-> [PersistValue]
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
RawQueryRes Text
a1 [PersistValue]
a2
rawQuery
:: (MonadResource m, MonadSqlQuery m)
=> Text -> [PersistValue] -> ConduitM () [PersistValue] m ()
rawQuery :: Text -> [PersistValue] -> ConduitM () [PersistValue] m ()
rawQuery Text
a1 [PersistValue]
a2 = m (Acquire (ConduitM () [PersistValue] m ()))
-> ConduitM () [PersistValue] m ()
forall (m :: * -> *) i o a.
MonadResource m =>
m (Acquire (ConduitM i o m a)) -> ConduitM i o m a
fromAcquire (m (Acquire (ConduitM () [PersistValue] m ()))
-> ConduitM () [PersistValue] m ())
-> m (Acquire (ConduitM () [PersistValue] m ()))
-> ConduitM () [PersistValue] m ()
forall a b. (a -> b) -> a -> b
$ SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m ()))
-> m (Acquire (ConduitM () [PersistValue] m ()))
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m ()))
-> m (Acquire (ConduitM () [PersistValue] m ())))
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m ()))
-> m (Acquire (ConduitM () [PersistValue] m ()))
forall a b. (a -> b) -> a -> b
$ Text
-> [PersistValue]
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m ()))
forall (m2 :: * -> *).
MonadIO m2 =>
Text
-> [PersistValue]
-> SqlQueryRep Void (Acquire (ConduitM () [PersistValue] m2 ()))
RawQueryRes Text
a1 [PersistValue]
a2
rawExecute
:: (MonadSqlQuery m)
=> Text -> [PersistValue] -> m ()
rawExecute :: Text -> [PersistValue] -> m ()
rawExecute Text
a1 [PersistValue]
a2 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ Text -> [PersistValue] -> SqlQueryRep Void ()
RawExecute Text
a1 [PersistValue]
a2
rawExecuteCount
:: (MonadSqlQuery m)
=> Text -> [PersistValue] -> m Int64
rawExecuteCount :: Text -> [PersistValue] -> m Int64
rawExecuteCount Text
a1 [PersistValue]
a2 = SqlQueryRep Void Int64 -> m Int64
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void Int64 -> m Int64)
-> SqlQueryRep Void Int64 -> m Int64
forall a b. (a -> b) -> a -> b
$ Text -> [PersistValue] -> SqlQueryRep Void Int64
RawExecuteCount Text
a1 [PersistValue]
a2
rawSql
:: (RawSql a, MonadSqlQuery m)
=> Text -> [PersistValue] -> m [a]
rawSql :: Text -> [PersistValue] -> m [a]
rawSql Text
a1 [PersistValue]
a2 = SqlQueryRep Void [a] -> m [a]
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void [a] -> m [a]) -> SqlQueryRep Void [a] -> m [a]
forall a b. (a -> b) -> a -> b
$ Text -> [PersistValue] -> SqlQueryRep Void [a]
forall a.
RawSql a =>
Text -> [PersistValue] -> SqlQueryRep Void [a]
RawSql Text
a1 [PersistValue]
a2
transactionSave
:: (MonadSqlQuery m)
=> m ()
transactionSave :: m ()
transactionSave = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ SqlQueryRep Void ()
TransactionSave
#if MIN_VERSION_persistent(2,9,0)
transactionSaveWithIsolation
:: (MonadSqlQuery m)
=> IsolationLevel -> m ()
transactionSaveWithIsolation :: IsolationLevel -> m ()
transactionSaveWithIsolation IsolationLevel
a1 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ IsolationLevel -> SqlQueryRep Void ()
TransactionSaveWithIsolation IsolationLevel
a1
#endif
transactionUndo
:: (MonadSqlQuery m)
=> m ()
transactionUndo :: m ()
transactionUndo = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ SqlQueryRep Void ()
TransactionUndo
#if MIN_VERSION_persistent(2,9,0)
transactionUndoWithIsolation
:: (MonadSqlQuery m)
=> IsolationLevel -> m ()
transactionUndoWithIsolation :: IsolationLevel -> m ()
transactionUndoWithIsolation IsolationLevel
a1 = SqlQueryRep Void () -> m ()
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void () -> m ()) -> SqlQueryRep Void () -> m ()
forall a b. (a -> b) -> a -> b
$ IsolationLevel -> SqlQueryRep Void ()
TransactionUndoWithIsolation IsolationLevel
a1
#endif
unsafeLiftSql :: MonadSqlQuery m => Text -> (forall m2. MonadIO m2 => SqlPersistT m2 a) -> m a
unsafeLiftSql :: Text
-> (forall (m2 :: * -> *). MonadIO m2 => SqlPersistT m2 a) -> m a
unsafeLiftSql Text
label forall (m2 :: * -> *). MonadIO m2 => SqlPersistT m2 a
action = SqlQueryRep Void a -> m a
forall (m :: * -> *) record a.
(MonadSqlQuery m, Typeable record) =>
SqlQueryRep record a -> m a
runQueryRep (SqlQueryRep Void a -> m a) -> SqlQueryRep Void a -> m a
forall a b. (a -> b) -> a -> b
$ Text
-> (forall (m2 :: * -> *). MonadIO m2 => SqlPersistT m2 a)
-> SqlQueryRep Void a
forall a.
Text
-> (forall (m :: * -> *). MonadIO m => SqlPersistT m a)
-> SqlQueryRep Void a
UnsafeLiftSql Text
label forall (m2 :: * -> *). MonadIO m2 => SqlPersistT m2 a
action
fromAcquire :: MonadResource m => m (Acquire (ConduitM i o m a)) -> ConduitM i o m a
fromAcquire :: m (Acquire (ConduitM i o m a)) -> ConduitM i o m a
fromAcquire m (Acquire (ConduitM i o m a))
getAcquire = do
(ReleaseKey
_, ConduitM i o m a
conduit) <- m (ReleaseKey, ConduitM i o m a)
-> ConduitT i o m (ReleaseKey, ConduitM i o m a)
forall (t :: (* -> *) -> * -> *) (m :: * -> *) a.
(MonadTrans t, Monad m) =>
m a -> t m a
lift (m (ReleaseKey, ConduitM i o m a)
-> ConduitT i o m (ReleaseKey, ConduitM i o m a))
-> m (ReleaseKey, ConduitM i o m a)
-> ConduitT i o m (ReleaseKey, ConduitM i o m a)
forall a b. (a -> b) -> a -> b
$ m (Acquire (ConduitM i o m a))
getAcquire m (Acquire (ConduitM i o m a))
-> (Acquire (ConduitM i o m a) -> m (ReleaseKey, ConduitM i o m a))
-> m (ReleaseKey, ConduitM i o m a)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Acquire (ConduitM i o m a) -> m (ReleaseKey, ConduitM i o m a)
forall (m :: * -> *) a.
MonadResource m =>
Acquire a -> m (ReleaseKey, a)
allocateAcquire
ConduitM i o m a
conduit