-- | This module provides the tools for defining your database schema and using -- it to generate Haskell data types and migrations. -- -- For documentation on the domain specific language used for defining database -- models, see "Database.Persist.Quasi". -- -- module Database.Persist.TH ( -- * Parse entity defs persistWith , persistUpperCase , persistLowerCase , persistFileWith , persistManyFileWith -- * Turn @EntityDef@s into types , mkPersist , mkPersistWith -- ** Configuring Entity Definition , MkPersistSettings , mkPersistSettings , sqlSettings -- *** Record Fields (for update/viewing settings) , mpsBackend , mpsGeneric , mpsPrefixFields , mpsFieldLabelModifier , mpsAvoidHsKeyword , mpsConstraintLabelModifier , mpsEntityHaddocks , mpsEntityJSON , mpsGenerateLenses , mpsDeriveInstances , mpsCamelCaseCompositeKeySelector , EntityJSON(..) -- ** Implicit ID Columns , ImplicitIdDef , setImplicitIdDef -- * Various other TH functions , mkMigrate , migrateModels , discoverEntities , mkEntityDefList , share , derivePersistField , derivePersistFieldJSON , persistFieldFromEntity ) where import Database.Persist.TH.Internal