yesod-persistent-1.6.0.8: Some helpers for using Persistent from Yesod.
Safe HaskellNone
LanguageHaskell2010

Yesod.Persist

Documentation

class (PersistField (Key record), ToJSON (Key record), FromJSON (Key record), Show (Key record), Read (Key record), Eq (Key record), Ord (Key record)) => PersistEntity record where #

Associated Types

type PersistEntityBackend record #

data Key record #

data EntityField record :: Type -> Type #

data Unique record #

Methods

keyToValues :: Key record -> [PersistValue] #

keyFromValues :: [PersistValue] -> Either Text (Key record) #

persistIdField :: EntityField record (Key record) #

entityDef :: proxy record -> EntityDef #

persistFieldDef :: EntityField record typ -> FieldDef #

toPersistFields :: record -> [PersistValue] #

fromPersistValues :: [PersistValue] -> Either Text record #

tabulateEntityA :: Applicative f => (forall a. EntityField record a -> f a) -> f (Entity record) #

tabulateEntityApply :: Apply f => (forall a. EntityField record a -> f a) -> f (Entity record) #

persistUniqueKeys :: record -> [Unique record] #

persistUniqueToFieldNames :: Unique record -> NonEmpty (FieldNameHS, FieldNameDB) #

persistUniqueToValues :: Unique record -> [PersistValue] #

fieldLens :: EntityField record field -> forall (f :: Type -> Type). Functor f => (field -> f field) -> Entity record -> f (Entity record) #

keyFromRecordM :: Maybe (record -> Key record) #

class PersistConfig c where #

Minimal complete definition

loadConfig, createPoolConfig, runPool

Associated Types

type PersistConfigBackend c :: (Type -> Type) -> Type -> Type #

type PersistConfigPool c #

Methods

loadConfig :: Value -> Parser c #

applyEnv :: c -> IO c #

createPoolConfig :: c -> IO (PersistConfigPool c) #

runPool :: MonadUnliftIO m => c -> PersistConfigBackend c m a -> PersistConfigPool c -> m a #

Instances

Instances details
(PersistConfig c1, PersistConfig c2, PersistConfigPool c1 ~ PersistConfigPool c2, PersistConfigBackend c1 ~ PersistConfigBackend c2) => PersistConfig (Either c1 c2) 
Instance details

Defined in Database.Persist.Class.PersistConfig

Associated Types

type PersistConfigBackend (Either c1 c2) 
Instance details

Defined in Database.Persist.Class.PersistConfig

type PersistConfigPool (Either c1 c2) 
Instance details

Defined in Database.Persist.Class.PersistConfig

type PersistConfigPool (Either c1 c2) = PersistConfigPool c1

Methods

loadConfig :: Value -> Parser (Either c1 c2) #

applyEnv :: Either c1 c2 -> IO (Either c1 c2) #

createPoolConfig :: Either c1 c2 -> IO (PersistConfigPool (Either c1 c2)) #

runPool :: MonadUnliftIO m => Either c1 c2 -> PersistConfigBackend (Either c1 c2) m a -> PersistConfigPool (Either c1 c2) -> m a #

type family PersistConfigPool c #

Instances

Instances details
type PersistConfigPool (Either c1 c2) 
Instance details

Defined in Database.Persist.Class.PersistConfig

type PersistConfigPool (Either c1 c2) = PersistConfigPool c1

type family PersistConfigBackend c :: (Type -> Type) -> Type -> Type #

Instances

Instances details
type PersistConfigBackend (Either c1 c2) 
Instance details

Defined in Database.Persist.Class.PersistConfig

class HasPersistBackend backend where #

Associated Types

type BaseBackend backend #

Methods

persistBackend :: backend -> BaseBackend backend #

Instances

Instances details
HasPersistBackend SqlReadBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

Associated Types

type BaseBackend SqlReadBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

type BaseBackend SqlReadBackend = SqlBackend

Methods

persistBackend :: SqlReadBackend -> BaseBackend SqlReadBackend #

HasPersistBackend SqlWriteBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

Associated Types

type BaseBackend SqlWriteBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

type BaseBackend SqlWriteBackend = SqlBackend

Methods

persistBackend :: SqlWriteBackend -> BaseBackend SqlWriteBackend #

HasPersistBackend SqlBackend 
Instance details

Defined in Database.Persist.SqlBackend.Internal

Associated Types

type BaseBackend SqlBackend 
Instance details

Defined in Database.Persist.SqlBackend.Internal

type BaseBackend SqlBackend = SqlBackend

Methods

persistBackend :: SqlBackend -> BaseBackend SqlBackend #

class (Show (BackendKey backend), Read (BackendKey backend), Eq (BackendKey backend), Ord (BackendKey backend), PersistCore backend, PersistField (BackendKey backend), ToJSON (BackendKey backend), FromJSON (BackendKey backend)) => PersistStoreRead backend where #

Minimal complete definition

get

Methods

get :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> ReaderT backend m (Maybe record) #

getMany :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => [Key record] -> ReaderT backend m (Map (Key record) record) #

type PersistRecordBackend record backend = (PersistEntity record, PersistEntityBackend record ~ BaseBackend backend) #

data family Key record #

class PersistStoreRead backend => PersistUniqueRead backend where #

Minimal complete definition

getBy

Methods

getBy :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Unique record -> ReaderT backend m (Maybe (Entity record)) #

existsBy :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Unique record -> ReaderT backend m Bool #

data family Unique record #

data Entity record #

Constructors

Entity 

Fields

Instances

Instances details
(Generic (Key record), Generic record) => Generic (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Associated Types

type Rep (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

type Rep (Entity record) = D1 ('MetaData "Entity" "Database.Persist.Class.PersistEntity" "persistent-2.17.0.0-L98FzI4Tm7FKDnIUSXXcNy" 'False) (C1 ('MetaCons "Entity" 'PrefixI 'True) (S1 ('MetaSel ('Just "entityKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Key record)) :*: S1 ('MetaSel ('Just "entityVal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 record)))

Methods

from :: Entity record -> Rep (Entity record) x

to :: Rep (Entity record) x -> Entity record

(Read (Key record), Read record) => Read (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

readsPrec :: Int -> ReadS (Entity record)

readList :: ReadS [Entity record]

readPrec :: ReadPrec (Entity record)

readListPrec :: ReadPrec [Entity record]

(Show (Key record), Show record) => Show (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

showsPrec :: Int -> Entity record -> ShowS

show :: Entity record -> String

showList :: [Entity record] -> ShowS

(Eq (Key record), Eq record) => Eq (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

(==) :: Entity record -> Entity record -> Bool

(/=) :: Entity record -> Entity record -> Bool

(Ord (Key record), Ord record) => Ord (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

compare :: Entity record -> Entity record -> Ordering

(<) :: Entity record -> Entity record -> Bool

(<=) :: Entity record -> Entity record -> Bool

(>) :: Entity record -> Entity record -> Bool

(>=) :: Entity record -> Entity record -> Bool

max :: Entity record -> Entity record -> Entity record

min :: Entity record -> Entity record -> Entity record

(TypeError (EntityErrorMessage a) :: Constraint) => SafeToInsert (Entity a) 
Instance details

Defined in Database.Persist.Class.PersistEntity

(PersistEntity record, PersistField record, PersistField (Key record)) => PersistField (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

toPersistValue :: Entity record -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Entity record) #

type Rep (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

type Rep (Entity record) = D1 ('MetaData "Entity" "Database.Persist.Class.PersistEntity" "persistent-2.17.0.0-L98FzI4Tm7FKDnIUSXXcNy" 'False) (C1 ('MetaCons "Entity" 'PrefixI 'True) (S1 ('MetaSel ('Just "entityKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Key record)) :*: S1 ('MetaSel ('Just "entityVal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 record)))

class (PersistUniqueRead backend, PersistStoreWrite backend) => PersistUniqueWrite backend where #

Minimal complete definition

deleteBy

Methods

deleteBy :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Unique record -> ReaderT backend m () #

insertUnique :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => record -> ReaderT backend m (Maybe (Key record)) #

insertUnique_ :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => record -> ReaderT backend m (Maybe ()) #

upsert :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, OnlyOneUniqueKey record, SafeToInsert record) => record -> [Update record] -> ReaderT backend m (Entity record) #

upsertBy :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => Unique record -> record -> [Update record] -> ReaderT backend m (Entity record) #

putMany :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => [record] -> ReaderT backend m () #

class SafeToInsert a #

Instances

Instances details
(TypeError (EntityErrorMessage a) :: Constraint) => SafeToInsert (Entity a) 
Instance details

Defined in Database.Persist.Class.PersistEntity

(TypeError (FunctionErrorMessage a b) :: Constraint) => SafeToInsert (a -> b) 
Instance details

Defined in Database.Persist.Class.PersistEntity

checkUnique :: forall record backend (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, PersistUniqueRead backend) => record -> ReaderT backend m (Maybe (Unique record)) #

newtype FieldNameHS #

Constructors

FieldNameHS 

Fields

Instances

Instances details
Read FieldNameHS 
Instance details

Defined in Database.Persist.Names

Methods

readsPrec :: Int -> ReadS FieldNameHS

readList :: ReadS [FieldNameHS]

readPrec :: ReadPrec FieldNameHS

readListPrec :: ReadPrec [FieldNameHS]

Show FieldNameHS 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> FieldNameHS -> ShowS

show :: FieldNameHS -> String

showList :: [FieldNameHS] -> ShowS

Eq FieldNameHS 
Instance details

Defined in Database.Persist.Names

Methods

(==) :: FieldNameHS -> FieldNameHS -> Bool

(/=) :: FieldNameHS -> FieldNameHS -> Bool

Ord FieldNameHS 
Instance details

Defined in Database.Persist.Names

Lift FieldNameHS 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => FieldNameHS -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldNameHS -> Code m FieldNameHS

class (Show (BackendKey backend), Read (BackendKey backend), Eq (BackendKey backend), Ord (BackendKey backend), PersistStoreRead backend, PersistField (BackendKey backend), ToJSON (BackendKey backend), FromJSON (BackendKey backend)) => PersistStoreWrite backend where #

Minimal complete definition

insert, insertKey, repsert, replace, delete, update

Methods

insert :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => record -> ReaderT backend m (Key record) #

insert_ :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => record -> ReaderT backend m () #

insertMany :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => [record] -> ReaderT backend m [Key record] #

insertMany_ :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, SafeToInsert record) => [record] -> ReaderT backend m () #

insertEntityMany :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => [Entity record] -> ReaderT backend m () #

insertKey :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> record -> ReaderT backend m () #

repsert :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> record -> ReaderT backend m () #

repsertMany :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => [(Key record, record)] -> ReaderT backend m () #

replace :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> record -> ReaderT backend m () #

delete :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> ReaderT backend m () #

update :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> [Update record] -> ReaderT backend m () #

updateGet :: forall record (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend) => Key record -> [Update record] -> ReaderT backend m record #

data PersistFilter #

Constructors

Eq 
Ne 
Gt 
Lt 
Ge 
Le 
In 
NotIn 
BackendSpecificFilter Text 

Instances

Instances details
Read PersistFilter 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS PersistFilter

readList :: ReadS [PersistFilter]

readPrec :: ReadPrec PersistFilter

readListPrec :: ReadPrec [PersistFilter]

Show PersistFilter 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> PersistFilter -> ShowS

show :: PersistFilter -> String

showList :: [PersistFilter] -> ShowS

Lift PersistFilter 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => PersistFilter -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => PersistFilter -> Code m PersistFilter

data SelectOpt record #

Constructors

Asc (EntityField record typ) 
Desc (EntityField record typ) 
OffsetBy Int 
LimitTo Int 

data Filter record #

type family BackendSpecificFilter backend record #

type family BackendSpecificUpdate backend record #

data PersistUpdate #

Instances

Instances details
Read PersistUpdate 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS PersistUpdate

readList :: ReadS [PersistUpdate]

readPrec :: ReadPrec PersistUpdate

readListPrec :: ReadPrec [PersistUpdate]

Show PersistUpdate 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> PersistUpdate -> ShowS

show :: PersistUpdate -> String

showList :: [PersistUpdate] -> ShowS

Lift PersistUpdate 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => PersistUpdate -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => PersistUpdate -> Code m PersistUpdate

data Update record #

data family EntityField record :: Type -> Type #

Instances

Instances details
SymbolToField sym rec typ => IsLabel sym (EntityField rec typ) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

fromLabel :: EntityField rec typ

data FilterValue typ where #

Constructors

FilterValue :: forall typ. typ -> FilterValue typ 
FilterValues :: forall typ. [typ] -> FilterValue typ 
UnsafeValue :: forall a typ. PersistField a => a -> FilterValue typ 

type family PersistEntityBackend record #

class SymbolToField (sym :: Symbol) rec typ | sym rec -> typ where #

Methods

symbolToField :: EntityField rec typ #

entityIdFromJSON :: (PersistEntity record, FromJSON record) => Value -> Parser (Entity record) #

entityIdToJSON :: (PersistEntity record, ToJSON record) => Entity record -> Value #

fromPersistValueJSON :: FromJSON a => PersistValue -> Either Text a #

keyValueEntityFromJSON :: (PersistEntity record, FromJSON record) => Value -> Parser (Entity record) #

keyValueEntityToJSON :: (PersistEntity record, ToJSON record) => Entity record -> Value #

tabulateEntity :: PersistEntity record => (forall a. EntityField record a -> a) -> Entity record #

toPersistValueJSON :: ToJSON a => a -> PersistValue #

newtype OverflowNatural #

Constructors

OverflowNatural 

Fields

Instances

Instances details
Num OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

Show OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

showsPrec :: Int -> OverflowNatural -> ShowS

show :: OverflowNatural -> String

showList :: [OverflowNatural] -> ShowS

Eq OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

Ord OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

PersistField OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

class PersistField a where #

Methods

toPersistValue :: a -> PersistValue #

fromPersistValue :: PersistValue -> Either Text a #

Instances

Instances details
PersistField Html 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Html -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Html #

PersistField ByteString 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: ByteString -> PersistValue #

fromPersistValue :: PersistValue -> Either Text ByteString #

PersistField Int16 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Int16 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Int16 #

PersistField Int32 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Int32 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Int32 #

PersistField Int64 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Int64 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Int64 #

PersistField Int8 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Int8 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Int8 #

PersistField Rational 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Rational -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Rational #

PersistField Word16 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Word16 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Word16 #

PersistField Word32 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Word32 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Word32 #

PersistField Word64 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Word64 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Word64 #

PersistField Word8 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Word8 -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Word8 #

PersistField OverflowNatural 
Instance details

Defined in Database.Persist.Class.PersistField

PersistField PersistValue 
Instance details

Defined in Database.Persist.Class.PersistField

PersistField Checkmark 
Instance details

Defined in Database.Persist.Class.PersistField

PersistField Text 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Text -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Text #

PersistField Text 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Text -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Text #

PersistField Day 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Day -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Day #

PersistField UTCTime 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: UTCTime -> PersistValue #

fromPersistValue :: PersistValue -> Either Text UTCTime #

PersistField TimeOfDay 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: TimeOfDay -> PersistValue #

fromPersistValue :: PersistValue -> Either Text TimeOfDay #

(TypeError ((((('Text "The instance of PersistField for the Natural type was removed." ':$$: 'Text "Please see the documentation for OverflowNatural if you want to ") ':$$: 'Text "continue using the old behavior or want to see documentation on ") ':$$: 'Text "why the instance was removed.") ':$$: 'Text "") ':$$: 'Text "This error instance will be removed in a future release.") :: Constraint) => PersistField Natural 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Natural -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Natural #

PersistField Bool 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Bool -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Bool #

PersistField Double 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Double -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Double #

PersistField Int 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Int -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Int #

PersistField Word 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Word -> PersistValue #

fromPersistValue :: PersistValue -> Either Text Word #

PersistField v => PersistField (IntMap v) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: IntMap v -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (IntMap v) #

(Ord a, PersistField a) => PersistField (Set a) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Set a -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Set a) #

(PersistEntity record, PersistField record, PersistField (Key record)) => PersistField (Entity record) 
Instance details

Defined in Database.Persist.Class.PersistEntity

Methods

toPersistValue :: Entity record -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Entity record) #

PersistField a => PersistField (Vector a) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Vector a -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Vector a) #

PersistField a => PersistField (Maybe a) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Maybe a -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Maybe a) #

PersistField [Char] 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: [Char] -> PersistValue #

fromPersistValue :: PersistValue -> Either Text [Char] #

PersistField a => PersistField [a] 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: [a] -> PersistValue #

fromPersistValue :: PersistValue -> Either Text [a] #

HasResolution a => PersistField (Fixed a) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Fixed a -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Fixed a) #

PersistField v => PersistField (Map Text v) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: Map Text v -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (Map Text v) #

(PersistField a, PersistField b) => PersistField (a, b) 
Instance details

Defined in Database.Persist.Class.PersistField

Methods

toPersistValue :: (a, b) -> PersistValue #

fromPersistValue :: PersistValue -> Either Text (a, b) #

getPersistMap :: PersistValue -> Either Text [(Text, PersistValue)] #

class (PersistCore backend, PersistStoreRead backend) => PersistQueryRead backend where #

Minimal complete definition

selectSourceRes, selectKeysRes, count, exists

Methods

selectSourceRes :: forall record (m1 :: Type -> Type) (m2 :: Type -> Type). (PersistRecordBackend record backend, MonadIO m1, MonadIO m2) => [Filter record] -> [SelectOpt record] -> ReaderT backend m1 (Acquire (ConduitM () (Entity record) m2 ())) #

selectFirst :: forall (m :: Type -> Type) record. (MonadIO m, PersistRecordBackend record backend) => [Filter record] -> [SelectOpt record] -> ReaderT backend m (Maybe (Entity record)) #

selectKeysRes :: forall (m1 :: Type -> Type) (m2 :: Type -> Type) record. (MonadIO m1, MonadIO m2, PersistRecordBackend record backend) => [Filter record] -> [SelectOpt record] -> ReaderT backend m1 (Acquire (ConduitM () (Key record) m2 ())) #

count :: forall (m :: Type -> Type) record. (MonadIO m, PersistRecordBackend record backend) => [Filter record] -> ReaderT backend m Int #

exists :: forall (m :: Type -> Type) record. (MonadIO m, PersistRecordBackend record backend) => [Filter record] -> ReaderT backend m Bool #

class (PersistQueryRead backend, PersistStoreWrite backend) => PersistQueryWrite backend where #

Methods

updateWhere :: forall (m :: Type -> Type) record. (MonadIO m, PersistRecordBackend record backend) => [Filter record] -> [Update record] -> ReaderT backend m () #

deleteWhere :: forall (m :: Type -> Type) record. (MonadIO m, PersistRecordBackend record backend) => [Filter record] -> ReaderT backend m () #

selectKeys :: forall record backend (m :: Type -> Type). (PersistQueryRead backend, MonadResource m, PersistRecordBackend record backend, MonadReader backend m) => [Filter record] -> [SelectOpt record] -> ConduitM () (Key record) m () #

selectKeysList :: forall record backend (m :: Type -> Type). (MonadIO m, PersistQueryRead backend, PersistRecordBackend record backend) => [Filter record] -> [SelectOpt record] -> ReaderT backend m [Key record] #

selectList :: forall record backend (m :: Type -> Type). (MonadIO m, PersistQueryRead backend, PersistRecordBackend record backend) => [Filter record] -> [SelectOpt record] -> ReaderT backend m [Entity record] #

selectSource :: forall record backend (m :: Type -> Type). (PersistQueryRead backend, MonadResource m, PersistRecordBackend record backend, MonadReader backend m) => [Filter record] -> [SelectOpt record] -> ConduitM () (Entity record) m () #

class BackendCompatible sup sub where #

Methods

projectBackend :: sub -> sup #

class PersistCore backend #

Associated Types

data BackendKey backend #

data family BackendKey backend #

Instances

Instances details
newtype BackendKey SqlReadBackend 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

newtype BackendKey SqlReadBackend = SqlReadBackendKey {}
newtype BackendKey SqlWriteBackend 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

newtype BackendKey SqlWriteBackend = SqlWriteBackendKey {}
newtype BackendKey SqlBackend 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

newtype BackendKey SqlBackend = SqlBackendKey {}
type Rep (BackendKey SqlReadBackend) 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

type Rep (BackendKey SqlReadBackend) = D1 ('MetaData "BackendKey" "Database.Persist.Sql.Orphan.PersistStore" "persistent-2.17.0.0-L98FzI4Tm7FKDnIUSXXcNy" 'True) (C1 ('MetaCons "SqlReadBackendKey" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSqlReadBackendKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int64)))
type Rep (BackendKey SqlWriteBackend) 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

type Rep (BackendKey SqlWriteBackend) = D1 ('MetaData "BackendKey" "Database.Persist.Sql.Orphan.PersistStore" "persistent-2.17.0.0-L98FzI4Tm7FKDnIUSXXcNy" 'True) (C1 ('MetaCons "SqlWriteBackendKey" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSqlWriteBackendKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int64)))
type Rep (BackendKey SqlBackend) 
Instance details

Defined in Database.Persist.Sql.Orphan.PersistStore

type Rep (BackendKey SqlBackend) = D1 ('MetaData "BackendKey" "Database.Persist.Sql.Orphan.PersistStore" "persistent-2.17.0.0-L98FzI4Tm7FKDnIUSXXcNy" 'True) (C1 ('MetaCons "SqlBackendKey" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSqlBackendKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int64)))

type family BaseBackend backend #

Instances

Instances details
type BaseBackend SqlReadBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

type BaseBackend SqlReadBackend = SqlBackend
type BaseBackend SqlWriteBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

type BaseBackend SqlWriteBackend = SqlBackend
type BaseBackend SqlBackend 
Instance details

Defined in Database.Persist.SqlBackend.Internal

type BaseBackend SqlBackend = SqlBackend

class HasPersistBackend backend => IsPersistBackend backend #

Minimal complete definition

mkPersistBackend

Instances

Instances details
IsPersistBackend SqlReadBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

Methods

mkPersistBackend :: BaseBackend SqlReadBackend -> SqlReadBackend

IsPersistBackend SqlWriteBackend 
Instance details

Defined in Database.Persist.Sql.Types.Internal

Methods

mkPersistBackend :: BaseBackend SqlWriteBackend -> SqlWriteBackend

IsPersistBackend SqlBackend 
Instance details

Defined in Database.Persist.SqlBackend.Internal

Methods

mkPersistBackend :: BaseBackend SqlBackend -> SqlBackend

class (PersistEntity record, PersistEntityBackend record ~ backend, PersistCore backend) => ToBackendKey backend record where #

Methods

toBackendKey :: Key record -> BackendKey backend #

fromBackendKey :: BackendKey backend -> Key record #

belongsTo :: forall ent1 ent2 backend (m :: Type -> Type). (PersistStoreRead backend, PersistEntity ent1, PersistRecordBackend ent2 backend, MonadIO m) => (ent1 -> Maybe (Key ent2)) -> ent1 -> ReaderT backend m (Maybe ent2) #

belongsToJust :: forall ent1 ent2 backend (m :: Type -> Type). (PersistStoreRead backend, PersistEntity ent1, PersistRecordBackend ent2 backend, MonadIO m) => (ent1 -> Key ent2) -> ent1 -> ReaderT backend m ent2 #

getEntity :: forall e backend (m :: Type -> Type). (PersistStoreRead backend, PersistRecordBackend e backend, MonadIO m) => Key e -> ReaderT backend m (Maybe (Entity e)) #

getJust :: forall record backend (m :: Type -> Type). (PersistStoreRead backend, PersistRecordBackend record backend, MonadIO m) => Key record -> ReaderT backend m record #

getJustEntity :: forall record backend (m :: Type -> Type). (PersistEntityBackend record ~ BaseBackend backend, MonadIO m, PersistEntity record, PersistStoreRead backend) => Key record -> ReaderT backend m (Entity record) #

insertEntity :: forall e backend (m :: Type -> Type). (PersistStoreWrite backend, PersistRecordBackend e backend, SafeToInsert e, MonadIO m, HasCallStack) => e -> ReaderT backend m (Entity e) #

insertRecord :: forall record backend (m :: Type -> Type). (PersistEntityBackend record ~ BaseBackend backend, PersistEntity record, MonadIO m, PersistStoreWrite backend, SafeToInsert record, HasCallStack) => record -> ReaderT backend m record #

liftPersist :: (MonadIO m, MonadReader backend m) => ReaderT backend IO b -> m b #

withBaseBackend :: forall backend (m :: Type -> Type) a. HasPersistBackend backend => ReaderT (BaseBackend backend) m a -> ReaderT backend m a #

withCompatibleBackend :: forall sup sub (m :: Type -> Type) a. BackendCompatible sup sub => ReaderT sup m a -> ReaderT sub m a #

class PersistEntity record => AtLeastOneUniqueKey record where #

Methods

requireUniquesP :: record -> NonEmpty (Unique record) #

type MultipleUniqueKeysError ty = ((('Text "The entity " ':<>: 'ShowType ty) ':<>: 'Text " has multiple unique keys.") ':$$: ('Text "The function you are trying to call requires only a single " ':<>: 'Text "unique key.")) ':$$: (('Text "There is probably a variant of the function with 'By' " ':<>: 'Text "appended that will allow you to select a unique key ") ':<>: 'Text "for the operation.") #

type NoUniqueKeysError ty = (('Text "The entity " ':<>: 'ShowType ty) ':<>: 'Text " does not have any unique keys.") ':$$: ('Text "The function you are trying to call requires a unique key " ':<>: 'Text "to be defined on the entity.") #

class PersistEntity record => OnlyOneUniqueKey record where #

Methods

onlyUniqueP :: record -> Unique record #

checkUniqueUpdateable :: forall record backend (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, PersistUniqueRead backend) => Entity record -> ReaderT backend m (Maybe (Unique record)) #

getByValue :: forall record (m :: Type -> Type) backend. (MonadIO m, PersistUniqueRead backend, PersistRecordBackend record backend, AtLeastOneUniqueKey record) => record -> ReaderT backend m (Maybe (Entity record)) #

insertBy :: forall record backend (m :: Type -> Type). (MonadIO m, PersistUniqueWrite backend, PersistRecordBackend record backend, AtLeastOneUniqueKey record, SafeToInsert record) => record -> ReaderT backend m (Either (Entity record) (Key record)) #

insertUniqueEntity :: forall record backend (m :: Type -> Type). (MonadIO m, PersistRecordBackend record backend, PersistUniqueWrite backend, SafeToInsert record) => record -> ReaderT backend m (Maybe (Entity record)) #

onlyOneUniqueDef :: (OnlyOneUniqueKey record, Monad proxy) => proxy record -> UniqueDef #

onlyUnique :: forall record backend (m :: Type -> Type). (MonadIO m, PersistUniqueWrite backend, PersistRecordBackend record backend, OnlyOneUniqueKey record) => record -> ReaderT backend m (Unique record) #

replaceUnique :: forall record backend (m :: Type -> Type). (MonadIO m, Eq (Unique record), PersistRecordBackend record backend, PersistUniqueWrite backend) => Key record -> record -> ReaderT backend m (Maybe (Unique record)) #

getEntityComments :: EntityDef -> Maybe Text #

getEntityExtra :: EntityDef -> Map Text [[Text]] #

getEntitySpan :: EntityDef -> Maybe SourceSpan #

newtype ConstraintNameDB #

Constructors

ConstraintNameDB 

Fields

Instances

Instances details
Read ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Show ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> ConstraintNameDB -> ShowS

show :: ConstraintNameDB -> String

showList :: [ConstraintNameDB] -> ShowS

Eq ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Ord ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

DatabaseName ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> ConstraintNameDB -> str #

Lift ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => ConstraintNameDB -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => ConstraintNameDB -> Code m ConstraintNameDB

newtype ConstraintNameHS #

Constructors

ConstraintNameHS 

Fields

Instances

Instances details
Read ConstraintNameHS 
Instance details

Defined in Database.Persist.Names

Show ConstraintNameHS 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> ConstraintNameHS -> ShowS

show :: ConstraintNameHS -> String

showList :: [ConstraintNameHS] -> ShowS

Eq ConstraintNameHS 
Instance details

Defined in Database.Persist.Names

Ord ConstraintNameHS 
Instance details

Defined in Database.Persist.Names

Lift ConstraintNameHS 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => ConstraintNameHS -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => ConstraintNameHS -> Code m ConstraintNameHS

class DatabaseName a where #

Methods

escapeWith :: (Text -> str) -> a -> str #

Instances

Instances details
DatabaseName ConstraintNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> ConstraintNameDB -> str #

DatabaseName EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> EntityNameDB -> str #

DatabaseName FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> FieldNameDB -> str #

newtype EntityNameDB #

Constructors

EntityNameDB 

Fields

Instances

Instances details
Read EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

readsPrec :: Int -> ReadS EntityNameDB

readList :: ReadS [EntityNameDB]

readPrec :: ReadPrec EntityNameDB

readListPrec :: ReadPrec [EntityNameDB]

Show EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> EntityNameDB -> ShowS

show :: EntityNameDB -> String

showList :: [EntityNameDB] -> ShowS

Eq EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

(==) :: EntityNameDB -> EntityNameDB -> Bool

(/=) :: EntityNameDB -> EntityNameDB -> Bool

Ord EntityNameDB 
Instance details

Defined in Database.Persist.Names

DatabaseName EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> EntityNameDB -> str #

Lift EntityNameDB 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => EntityNameDB -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EntityNameDB -> Code m EntityNameDB

newtype EntityNameHS #

Constructors

EntityNameHS 

Fields

Instances

Instances details
Read EntityNameHS 
Instance details

Defined in Database.Persist.Names

Methods

readsPrec :: Int -> ReadS EntityNameHS

readList :: ReadS [EntityNameHS]

readPrec :: ReadPrec EntityNameHS

readListPrec :: ReadPrec [EntityNameHS]

Show EntityNameHS 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> EntityNameHS -> ShowS

show :: EntityNameHS -> String

showList :: [EntityNameHS] -> ShowS

Eq EntityNameHS 
Instance details

Defined in Database.Persist.Names

Methods

(==) :: EntityNameHS -> EntityNameHS -> Bool

(/=) :: EntityNameHS -> EntityNameHS -> Bool

Ord EntityNameHS 
Instance details

Defined in Database.Persist.Names

Lift EntityNameHS 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => EntityNameHS -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EntityNameHS -> Code m EntityNameHS

newtype FieldNameDB #

Constructors

FieldNameDB 

Fields

Instances

Instances details
Read FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

readsPrec :: Int -> ReadS FieldNameDB

readList :: ReadS [FieldNameDB]

readPrec :: ReadPrec FieldNameDB

readListPrec :: ReadPrec [FieldNameDB]

Show FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

showsPrec :: Int -> FieldNameDB -> ShowS

show :: FieldNameDB -> String

showList :: [FieldNameDB] -> ShowS

Eq FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

(==) :: FieldNameDB -> FieldNameDB -> Bool

(/=) :: FieldNameDB -> FieldNameDB -> Bool

Ord FieldNameDB 
Instance details

Defined in Database.Persist.Names

DatabaseName FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

escapeWith :: (Text -> str) -> FieldNameDB -> str #

Lift FieldNameDB 
Instance details

Defined in Database.Persist.Names

Methods

lift :: Quote m => FieldNameDB -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldNameDB -> Code m FieldNameDB

data LiteralType #

Constructors

Escaped 
Unescaped 
DbSpecific 

Instances

Instances details
Read LiteralType 
Instance details

Defined in Database.Persist.PersistValue

Methods

readsPrec :: Int -> ReadS LiteralType

readList :: ReadS [LiteralType]

readPrec :: ReadPrec LiteralType

readListPrec :: ReadPrec [LiteralType]

Show LiteralType 
Instance details

Defined in Database.Persist.PersistValue

Methods

showsPrec :: Int -> LiteralType -> ShowS

show :: LiteralType -> String

showList :: [LiteralType] -> ShowS

Eq LiteralType 
Instance details

Defined in Database.Persist.PersistValue

Methods

(==) :: LiteralType -> LiteralType -> Bool

(/=) :: LiteralType -> LiteralType -> Bool

Ord LiteralType 
Instance details

Defined in Database.Persist.PersistValue

data PersistValue #

Bundled Patterns

pattern PersistDbSpecific :: ByteString -> PersistValue 
pattern PersistLiteral :: ByteString -> PersistValue 
pattern PersistLiteralEscaped :: ByteString -> PersistValue 

Instances

Instances details
FromJSON PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

parseJSON :: Value -> Parser PersistValue

parseJSONList :: Value -> Parser [PersistValue]

omittedField :: Maybe PersistValue

ToJSON PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

toJSON :: PersistValue -> Value

toEncoding :: PersistValue -> Encoding

toJSONList :: [PersistValue] -> Value

toEncodingList :: [PersistValue] -> Encoding

omitField :: PersistValue -> Bool

NFData PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

rnf :: PersistValue -> ()

Read PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

readsPrec :: Int -> ReadS PersistValue

readList :: ReadS [PersistValue]

readPrec :: ReadPrec PersistValue

readListPrec :: ReadPrec [PersistValue]

Show PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

showsPrec :: Int -> PersistValue -> ShowS

show :: PersistValue -> String

showList :: [PersistValue] -> ShowS

Eq PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

(==) :: PersistValue -> PersistValue -> Bool

(/=) :: PersistValue -> PersistValue -> Bool

Ord PersistValue 
Instance details

Defined in Database.Persist.PersistValue

FromHttpApiData PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

parseUrlPiece :: Text -> Either Text PersistValue

parseHeader :: ByteString -> Either Text PersistValue

parseQueryParam :: Text -> Either Text PersistValue

ToHttpApiData PersistValue 
Instance details

Defined in Database.Persist.PersistValue

PathPiece PersistValue 
Instance details

Defined in Database.Persist.PersistValue

Methods

fromPathPiece :: Text -> Maybe PersistValue

toPathPiece :: PersistValue -> Text

PersistField PersistValue 
Instance details

Defined in Database.Persist.Class.PersistField

fromPersistValueText :: PersistValue -> Either Text Text #

data Checkmark #

Constructors

Active 
Inactive 

Instances

Instances details
Bounded Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Enum Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Read Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS Checkmark

readList :: ReadS [Checkmark]

readPrec :: ReadPrec Checkmark

readListPrec :: ReadPrec [Checkmark]

Show Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> Checkmark -> ShowS

show :: Checkmark -> String

showList :: [Checkmark] -> ShowS

Eq Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: Checkmark -> Checkmark -> Bool

(/=) :: Checkmark -> Checkmark -> Bool

Ord Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: Checkmark -> Checkmark -> Ordering

(<) :: Checkmark -> Checkmark -> Bool

(<=) :: Checkmark -> Checkmark -> Bool

(>) :: Checkmark -> Checkmark -> Bool

(>=) :: Checkmark -> Checkmark -> Bool

max :: Checkmark -> Checkmark -> Checkmark

min :: Checkmark -> Checkmark -> Checkmark

FromHttpApiData Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

parseUrlPiece :: Text -> Either Text Checkmark

parseHeader :: ByteString -> Either Text Checkmark

parseQueryParam :: Text -> Either Text Checkmark

ToHttpApiData Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

toUrlPiece :: Checkmark -> Text

toEncodedUrlPiece :: Checkmark -> Builder

toHeader :: Checkmark -> ByteString

toQueryParam :: Checkmark -> Text

toEncodedQueryParam :: Checkmark -> Builder

PathPiece Checkmark 
Instance details

Defined in Database.Persist.Types.Base

Methods

fromPathPiece :: Text -> Maybe Checkmark

toPathPiece :: Checkmark -> Text

PersistField Checkmark 
Instance details

Defined in Database.Persist.Class.PersistField

type Attr = Text #

data WhyNullable #

Instances

Instances details
Show WhyNullable 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> WhyNullable -> ShowS

show :: WhyNullable -> String

showList :: [WhyNullable] -> ShowS

Eq WhyNullable 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: WhyNullable -> WhyNullable -> Bool

(/=) :: WhyNullable -> WhyNullable -> Bool

data CascadeAction #

Instances

Instances details
Read CascadeAction 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS CascadeAction

readList :: ReadS [CascadeAction]

readPrec :: ReadPrec CascadeAction

readListPrec :: ReadPrec [CascadeAction]

Show CascadeAction 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> CascadeAction -> ShowS

show :: CascadeAction -> String

showList :: [CascadeAction] -> ShowS

Eq CascadeAction 
Instance details

Defined in Database.Persist.Types.Base

Ord CascadeAction 
Instance details

Defined in Database.Persist.Types.Base

Lift CascadeAction 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => CascadeAction -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => CascadeAction -> Code m CascadeAction

data CompositeDef #

Constructors

CompositeDef 

Fields

Instances

Instances details
Read CompositeDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS CompositeDef

readList :: ReadS [CompositeDef]

readPrec :: ReadPrec CompositeDef

readListPrec :: ReadPrec [CompositeDef]

Show CompositeDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> CompositeDef -> ShowS

show :: CompositeDef -> String

showList :: [CompositeDef] -> ShowS

Eq CompositeDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: CompositeDef -> CompositeDef -> Bool

(/=) :: CompositeDef -> CompositeDef -> Bool

Ord CompositeDef 
Instance details

Defined in Database.Persist.Types.Base

Lift CompositeDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => CompositeDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => CompositeDef -> Code m CompositeDef

data EmbedEntityDef #

Instances

Instances details
Read EmbedEntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS EmbedEntityDef

readList :: ReadS [EmbedEntityDef]

readPrec :: ReadPrec EmbedEntityDef

readListPrec :: ReadPrec [EmbedEntityDef]

Show EmbedEntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> EmbedEntityDef -> ShowS

show :: EmbedEntityDef -> String

showList :: [EmbedEntityDef] -> ShowS

Eq EmbedEntityDef 
Instance details

Defined in Database.Persist.Types.Base

Ord EmbedEntityDef 
Instance details

Defined in Database.Persist.Types.Base

Lift EmbedEntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => EmbedEntityDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EmbedEntityDef -> Code m EmbedEntityDef

data EmbedFieldDef #

Constructors

EmbedFieldDef 

Fields

Instances

Instances details
Read EmbedFieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS EmbedFieldDef

readList :: ReadS [EmbedFieldDef]

readPrec :: ReadPrec EmbedFieldDef

readListPrec :: ReadPrec [EmbedFieldDef]

Show EmbedFieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> EmbedFieldDef -> ShowS

show :: EmbedFieldDef -> String

showList :: [EmbedFieldDef] -> ShowS

Eq EmbedFieldDef 
Instance details

Defined in Database.Persist.Types.Base

Ord EmbedFieldDef 
Instance details

Defined in Database.Persist.Types.Base

Lift EmbedFieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => EmbedFieldDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EmbedFieldDef -> Code m EmbedFieldDef

data ReferenceDef #

Instances

Instances details
Read ReferenceDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS ReferenceDef

readList :: ReadS [ReferenceDef]

readPrec :: ReadPrec ReferenceDef

readListPrec :: ReadPrec [ReferenceDef]

Show ReferenceDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> ReferenceDef -> ShowS

show :: ReferenceDef -> String

showList :: [ReferenceDef] -> ShowS

Eq ReferenceDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: ReferenceDef -> ReferenceDef -> Bool

(/=) :: ReferenceDef -> ReferenceDef -> Bool

Ord ReferenceDef 
Instance details

Defined in Database.Persist.Types.Base

Lift ReferenceDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => ReferenceDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => ReferenceDef -> Code m ReferenceDef

data EntityDef #

Instances

Instances details
Read EntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS EntityDef

readList :: ReadS [EntityDef]

readPrec :: ReadPrec EntityDef

readListPrec :: ReadPrec [EntityDef]

Show EntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> EntityDef -> ShowS

show :: EntityDef -> String

showList :: [EntityDef] -> ShowS

Eq EntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: EntityDef -> EntityDef -> Bool

(/=) :: EntityDef -> EntityDef -> Bool

Ord EntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: EntityDef -> EntityDef -> Ordering

(<) :: EntityDef -> EntityDef -> Bool

(<=) :: EntityDef -> EntityDef -> Bool

(>) :: EntityDef -> EntityDef -> Bool

(>=) :: EntityDef -> EntityDef -> Bool

max :: EntityDef -> EntityDef -> EntityDef

min :: EntityDef -> EntityDef -> EntityDef

Lift EntityDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => EntityDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EntityDef -> Code m EntityDef

data EntityIdDef #

Instances

Instances details
Read EntityIdDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS EntityIdDef

readList :: ReadS [EntityIdDef]

readPrec :: ReadPrec EntityIdDef

readListPrec :: ReadPrec [EntityIdDef]

Show EntityIdDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> EntityIdDef -> ShowS

show :: EntityIdDef -> String

showList :: [EntityIdDef] -> ShowS

Eq EntityIdDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: EntityIdDef -> EntityIdDef -> Bool

(/=) :: EntityIdDef -> EntityIdDef -> Bool

Ord EntityIdDef 
Instance details

Defined in Database.Persist.Types.Base

Lift EntityIdDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => EntityIdDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => EntityIdDef -> Code m EntityIdDef

type ExtraLine = [Text] #

data FieldType #

Constructors

FTTypeCon (Maybe Text) Text 
FTLit FieldTypeLit 
FTTypePromoted Text 
FTApp FieldType FieldType 
FTList FieldType 

Instances

Instances details
Read FieldType 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS FieldType

readList :: ReadS [FieldType]

readPrec :: ReadPrec FieldType

readListPrec :: ReadPrec [FieldType]

Show FieldType 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> FieldType -> ShowS

show :: FieldType -> String

showList :: [FieldType] -> ShowS

Eq FieldType 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: FieldType -> FieldType -> Bool

(/=) :: FieldType -> FieldType -> Bool

Ord FieldType 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: FieldType -> FieldType -> Ordering

(<) :: FieldType -> FieldType -> Bool

(<=) :: FieldType -> FieldType -> Bool

(>) :: FieldType -> FieldType -> Bool

(>=) :: FieldType -> FieldType -> Bool

max :: FieldType -> FieldType -> FieldType

min :: FieldType -> FieldType -> FieldType

Lift FieldType 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => FieldType -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldType -> Code m FieldType

data FieldAttr #

Instances

Instances details
Read FieldAttr 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS FieldAttr

readList :: ReadS [FieldAttr]

readPrec :: ReadPrec FieldAttr

readListPrec :: ReadPrec [FieldAttr]

Show FieldAttr 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> FieldAttr -> ShowS

show :: FieldAttr -> String

showList :: [FieldAttr] -> ShowS

Eq FieldAttr 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: FieldAttr -> FieldAttr -> Bool

(/=) :: FieldAttr -> FieldAttr -> Bool

Ord FieldAttr 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: FieldAttr -> FieldAttr -> Ordering

(<) :: FieldAttr -> FieldAttr -> Bool

(<=) :: FieldAttr -> FieldAttr -> Bool

(>) :: FieldAttr -> FieldAttr -> Bool

(>=) :: FieldAttr -> FieldAttr -> Bool

max :: FieldAttr -> FieldAttr -> FieldAttr

min :: FieldAttr -> FieldAttr -> FieldAttr

Lift FieldAttr 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => FieldAttr -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldAttr -> Code m FieldAttr

data FieldCascade #

Constructors

FieldCascade 

Fields

Instances

Instances details
Read FieldCascade 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS FieldCascade

readList :: ReadS [FieldCascade]

readPrec :: ReadPrec FieldCascade

readListPrec :: ReadPrec [FieldCascade]

Show FieldCascade 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> FieldCascade -> ShowS

show :: FieldCascade -> String

showList :: [FieldCascade] -> ShowS

Eq FieldCascade 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: FieldCascade -> FieldCascade -> Bool

(/=) :: FieldCascade -> FieldCascade -> Bool

Ord FieldCascade 
Instance details

Defined in Database.Persist.Types.Base

Lift FieldCascade 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => FieldCascade -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldCascade -> Code m FieldCascade

data FieldDef #

Instances

Instances details
Read FieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS FieldDef

readList :: ReadS [FieldDef]

readPrec :: ReadPrec FieldDef

readListPrec :: ReadPrec [FieldDef]

Show FieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> FieldDef -> ShowS

show :: FieldDef -> String

showList :: [FieldDef] -> ShowS

Eq FieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: FieldDef -> FieldDef -> Bool

(/=) :: FieldDef -> FieldDef -> Bool

Ord FieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: FieldDef -> FieldDef -> Ordering

(<) :: FieldDef -> FieldDef -> Bool

(<=) :: FieldDef -> FieldDef -> Bool

(>) :: FieldDef -> FieldDef -> Bool

(>=) :: FieldDef -> FieldDef -> Bool

max :: FieldDef -> FieldDef -> FieldDef

min :: FieldDef -> FieldDef -> FieldDef

Lift FieldDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => FieldDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => FieldDef -> Code m FieldDef

data ForeignDef #

Instances

Instances details
Read ForeignDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS ForeignDef

readList :: ReadS [ForeignDef]

readPrec :: ReadPrec ForeignDef

readListPrec :: ReadPrec [ForeignDef]

Show ForeignDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> ForeignDef -> ShowS

show :: ForeignDef -> String

showList :: [ForeignDef] -> ShowS

Eq ForeignDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: ForeignDef -> ForeignDef -> Bool

(/=) :: ForeignDef -> ForeignDef -> Bool

Ord ForeignDef 
Instance details

Defined in Database.Persist.Types.Base

Lift ForeignDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => ForeignDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => ForeignDef -> Code m ForeignDef

data IsNullable #

Instances

Instances details
Show IsNullable 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> IsNullable -> ShowS

show :: IsNullable -> String

showList :: [IsNullable] -> ShowS

Eq IsNullable 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: IsNullable -> IsNullable -> Bool

(/=) :: IsNullable -> IsNullable -> Bool

data UpdateException #

Constructors

KeyNotFound String 
UpsertError String 

Instances

Instances details
Exception UpdateException 
Instance details

Defined in Database.Persist.Types.Base

Methods

toException :: UpdateException -> SomeException

fromException :: SomeException -> Maybe UpdateException

displayException :: UpdateException -> String

backtraceDesired :: UpdateException -> Bool

Show UpdateException 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> UpdateException -> ShowS

show :: UpdateException -> String

showList :: [UpdateException] -> ShowS

data PersistException #

Instances

Instances details
Exception PersistException 
Instance details

Defined in Database.Persist.Types.Base

Methods

toException :: PersistException -> SomeException

fromException :: SomeException -> Maybe PersistException

displayException :: PersistException -> String

backtraceDesired :: PersistException -> Bool

Show PersistException 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> PersistException -> ShowS

show :: PersistException -> String

showList :: [PersistException] -> ShowS

data SqlType #

Instances

Instances details
Read SqlType 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS SqlType

readList :: ReadS [SqlType]

readPrec :: ReadPrec SqlType

readListPrec :: ReadPrec [SqlType]

Show SqlType 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> SqlType -> ShowS

show :: SqlType -> String

showList :: [SqlType] -> ShowS

Eq SqlType 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: SqlType -> SqlType -> Bool

(/=) :: SqlType -> SqlType -> Bool

Ord SqlType 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: SqlType -> SqlType -> Ordering

(<) :: SqlType -> SqlType -> Bool

(<=) :: SqlType -> SqlType -> Bool

(>) :: SqlType -> SqlType -> Bool

(>=) :: SqlType -> SqlType -> Bool

max :: SqlType -> SqlType -> SqlType

min :: SqlType -> SqlType -> SqlType

Lift SqlType 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => SqlType -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => SqlType -> Code m SqlType

data UniqueDef #

Instances

Instances details
Read UniqueDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

readsPrec :: Int -> ReadS UniqueDef

readList :: ReadS [UniqueDef]

readPrec :: ReadPrec UniqueDef

readListPrec :: ReadPrec [UniqueDef]

Show UniqueDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

showsPrec :: Int -> UniqueDef -> ShowS

show :: UniqueDef -> String

showList :: [UniqueDef] -> ShowS

Eq UniqueDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

(==) :: UniqueDef -> UniqueDef -> Bool

(/=) :: UniqueDef -> UniqueDef -> Bool

Ord UniqueDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

compare :: UniqueDef -> UniqueDef -> Ordering

(<) :: UniqueDef -> UniqueDef -> Bool

(<=) :: UniqueDef -> UniqueDef -> Bool

(>) :: UniqueDef -> UniqueDef -> Bool

(>=) :: UniqueDef -> UniqueDef -> Bool

max :: UniqueDef -> UniqueDef -> UniqueDef

min :: UniqueDef -> UniqueDef -> UniqueDef

Lift UniqueDef 
Instance details

Defined in Database.Persist.Types.Base

Methods

lift :: Quote m => UniqueDef -> m Exp

liftTyped :: forall (m :: Type -> Type). Quote m => UniqueDef -> Code m UniqueDef

parseFieldAttrs :: [Text] -> [FieldAttr] #

(!=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(*=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Update v #

(+=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Update v #

(-=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Update v #

(/<-.) :: forall v typ. PersistField typ => EntityField v typ -> [typ] -> Filter v #

(/=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Update v #

(<-.) :: forall v typ. PersistField typ => EntityField v typ -> [typ] -> Filter v #

(<.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(<=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Update v #

(==.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(>.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(>=.) :: forall v typ. PersistField typ => EntityField v typ -> typ -> Filter v #

(||.) :: [Filter v] -> [Filter v] -> [Filter v] #

toJsonText :: ToJSON j => j -> Text #

limitOffsetOrder :: PersistEntity val => [SelectOpt val] -> (Int, Int, [SelectOpt val]) #

mapToJSON :: [(Text, PersistValue)] -> Text #

data EntityJSON #

Constructors

EntityJSON 

Fields

derivePersistField :: String -> Q [Dec] #

derivePersistFieldJSON :: String -> Q [Dec] #

migrateModels :: [EntityDef] -> Migration #

mkEntityDefList :: String -> [UnboundEntityDef] -> Q [Dec] #

mkMigrate :: String -> [UnboundEntityDef] -> Q [Dec] #

mkPersist :: MkPersistSettings -> [UnboundEntityDef] -> Q [Dec] #

mkPersistWith :: MkPersistSettings -> [EntityDef] -> [UnboundEntityDef] -> Q [Dec] #

persistFieldFromEntity :: MkPersistSettings -> UnboundEntityDef -> Q [Dec] #

persistFileWith :: PersistSettings -> FilePath -> Q Exp #

persistLowerCase :: QuasiQuoter #

persistManyFileWith :: PersistSettings -> [FilePath] -> Q Exp #

persistUpperCase :: QuasiQuoter #

persistWith :: PersistSettings -> QuasiQuoter #

share :: [[a] -> Q [Dec]] -> [a] -> Q [Dec] #