Safe Haskell | None |
---|---|
Language | Haskell2010 |
Database.Beam.Migrate.Checks
Description
Defines common DatabasePredicate
s that are shared among backends
Synopsis
- data SchemaExistsPredicate = SchemaExistsPredicate Text
- data TableExistsPredicate = TableExistsPredicate QualifiedName
- class HasDataTypeCreatedCheck dataType where
- dataTypeHasBeenCreated :: dataType -> (forall preCondition. Typeable preCondition => [preCondition]) -> Bool
- data TableHasColumn be where
- TableHasColumn :: forall be. HasDataTypeCreatedCheck (BeamMigrateSqlBackendDataTypeSyntax be) => {..} -> TableHasColumn be
- data TableColumnHasConstraint be = TableColumnHasConstraint {}
- data TableHasPrimaryKey = TableHasPrimaryKey {}
- beamCheckDeserializers :: (Typeable be, BeamMigrateOnlySqlBackend be, HasDataTypeCreatedCheck (BeamMigrateSqlBackendDataTypeSyntax be)) => BeamDeserializers be
Schema checks
data SchemaExistsPredicate Source #
Asserts that a schema with the given name exists in a database
Constructors
SchemaExistsPredicate Text | Table name |
Instances
Table checks
data TableExistsPredicate Source #
Asserts that a table with the given name exists in a database
Constructors
TableExistsPredicate QualifiedName | Table name |
Instances
Generic TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks Associated Types
Methods from :: TableExistsPredicate -> Rep TableExistsPredicate x # to :: Rep TableExistsPredicate x -> TableExistsPredicate # | |||||
Show TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods showsPrec :: Int -> TableExistsPredicate -> ShowS # show :: TableExistsPredicate -> String # showList :: [TableExistsPredicate] -> ShowS # | |||||
DatabasePredicate TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods englishDescription :: TableExistsPredicate -> String Source # predicateSpecificity :: proxy TableExistsPredicate -> PredicateSpecificity Source # serializePredicate :: TableExistsPredicate -> Value Source # predicateCascadesDropOn :: DatabasePredicate p' => TableExistsPredicate -> p' -> Bool Source # | |||||
Eq TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods (==) :: TableExistsPredicate -> TableExistsPredicate -> Bool # (/=) :: TableExistsPredicate -> TableExistsPredicate -> Bool # | |||||
Ord TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods compare :: TableExistsPredicate -> TableExistsPredicate -> Ordering # (<) :: TableExistsPredicate -> TableExistsPredicate -> Bool # (<=) :: TableExistsPredicate -> TableExistsPredicate -> Bool # (>) :: TableExistsPredicate -> TableExistsPredicate -> Bool # (>=) :: TableExistsPredicate -> TableExistsPredicate -> Bool # max :: TableExistsPredicate -> TableExistsPredicate -> TableExistsPredicate # min :: TableExistsPredicate -> TableExistsPredicate -> TableExistsPredicate # | |||||
Hashable TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks | |||||
type Rep TableExistsPredicate Source # | |||||
Defined in Database.Beam.Migrate.Checks type Rep TableExistsPredicate = D1 ('MetaData "TableExistsPredicate" "Database.Beam.Migrate.Checks" "beam-migrate-0.5.3.1-K7Jgw0T9R2l7ulXblzpp90" 'False) (C1 ('MetaCons "TableExistsPredicate" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 QualifiedName))) |
class HasDataTypeCreatedCheck dataType where Source #
A class that can check whether a particular data type is present in a set of preconditions.
Methods
dataTypeHasBeenCreated :: dataType -> (forall preCondition. Typeable preCondition => [preCondition]) -> Bool Source #
Instances
HasDataTypeCreatedCheck HsDataType Source # | |
Defined in Database.Beam.Haskell.Syntax Methods dataTypeHasBeenCreated :: HsDataType -> (forall preCondition. Typeable preCondition => [preCondition]) -> Bool Source # |
data TableHasColumn be where Source #
Asserts that the table specified has a column with the given data type. The
type paramater syntax
should be an instance of IsSql92ColumnSchemaSyntax
.
Constructors
TableHasColumn | |
Fields
|
Instances
(Typeable be, BeamMigrateOnlySqlBackend be, Hashable (BeamMigrateSqlBackendDataTypeSyntax be)) => DatabasePredicate (TableHasColumn be) Source # | |
Defined in Database.Beam.Migrate.Checks Methods englishDescription :: TableHasColumn be -> String Source # predicateSpecificity :: proxy (TableHasColumn be) -> PredicateSpecificity Source # serializePredicate :: TableHasColumn be -> Value Source # predicateCascadesDropOn :: DatabasePredicate p' => TableHasColumn be -> p' -> Bool Source # | |
Eq (BeamMigrateSqlBackendDataTypeSyntax be) => Eq (TableHasColumn be) Source # | |
Defined in Database.Beam.Migrate.Checks Methods (==) :: TableHasColumn be -> TableHasColumn be -> Bool # (/=) :: TableHasColumn be -> TableHasColumn be -> Bool # | |
Hashable (BeamMigrateSqlBackendDataTypeSyntax be) => Hashable (TableHasColumn be) Source # | |
Defined in Database.Beam.Migrate.Checks |
data TableColumnHasConstraint be Source #
Asserts that a particular column of a table has a given constraint. The
syntax
type parameter should be an instance of IsSql92ColumnSchemaSyntax
Constructors
TableColumnHasConstraint | |
Fields
|
Instances
Generic (TableColumnHasConstraint be) Source # | |||||
Defined in Database.Beam.Migrate.Checks Associated Types
Methods from :: TableColumnHasConstraint be -> Rep (TableColumnHasConstraint be) x # to :: Rep (TableColumnHasConstraint be) x -> TableColumnHasConstraint be # | |||||
(Typeable be, BeamMigrateOnlySqlBackend be, Hashable (BeamSqlBackendColumnConstraintDefinitionSyntax be)) => DatabasePredicate (TableColumnHasConstraint be) Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods englishDescription :: TableColumnHasConstraint be -> String Source # predicateSpecificity :: proxy (TableColumnHasConstraint be) -> PredicateSpecificity Source # serializePredicate :: TableColumnHasConstraint be -> Value Source # predicateCascadesDropOn :: DatabasePredicate p' => TableColumnHasConstraint be -> p' -> Bool Source # | |||||
Eq (BeamSqlBackendColumnConstraintDefinitionSyntax be) => Eq (TableColumnHasConstraint be) Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods (==) :: TableColumnHasConstraint be -> TableColumnHasConstraint be -> Bool # (/=) :: TableColumnHasConstraint be -> TableColumnHasConstraint be -> Bool # | |||||
Hashable (BeamSqlBackendColumnConstraintDefinitionSyntax be) => Hashable (TableColumnHasConstraint be) Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods hashWithSalt :: Int -> TableColumnHasConstraint be -> Int # hash :: TableColumnHasConstraint be -> Int # | |||||
type Rep (TableColumnHasConstraint be) Source # | |||||
Defined in Database.Beam.Migrate.Checks type Rep (TableColumnHasConstraint be) = D1 ('MetaData "TableColumnHasConstraint" "Database.Beam.Migrate.Checks" "beam-migrate-0.5.3.1-K7Jgw0T9R2l7ulXblzpp90" 'False) (C1 ('MetaCons "TableColumnHasConstraint" 'PrefixI 'True) (S1 ('MetaSel ('Just "hasConstraint_table") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 QualifiedName) :*: (S1 ('MetaSel ('Just "hasConstraint_column") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "hasConstraint_defn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (BeamSqlBackendColumnConstraintDefinitionSyntax be))))) |
data TableHasPrimaryKey Source #
Asserts that the given table has a primary key made of the given columns. The order of the columns is significant.
Constructors
TableHasPrimaryKey | |
Fields
|
Instances
Generic TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks Associated Types
Methods from :: TableHasPrimaryKey -> Rep TableHasPrimaryKey x # to :: Rep TableHasPrimaryKey x -> TableHasPrimaryKey # | |||||
Show TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods showsPrec :: Int -> TableHasPrimaryKey -> ShowS # show :: TableHasPrimaryKey -> String # showList :: [TableHasPrimaryKey] -> ShowS # | |||||
DatabasePredicate TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods englishDescription :: TableHasPrimaryKey -> String Source # predicateSpecificity :: proxy TableHasPrimaryKey -> PredicateSpecificity Source # serializePredicate :: TableHasPrimaryKey -> Value Source # predicateCascadesDropOn :: DatabasePredicate p' => TableHasPrimaryKey -> p' -> Bool Source # | |||||
Eq TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks Methods (==) :: TableHasPrimaryKey -> TableHasPrimaryKey -> Bool # (/=) :: TableHasPrimaryKey -> TableHasPrimaryKey -> Bool # | |||||
Hashable TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks | |||||
type Rep TableHasPrimaryKey Source # | |||||
Defined in Database.Beam.Migrate.Checks type Rep TableHasPrimaryKey = D1 ('MetaData "TableHasPrimaryKey" "Database.Beam.Migrate.Checks" "beam-migrate-0.5.3.1-K7Jgw0T9R2l7ulXblzpp90" 'False) (C1 ('MetaCons "TableHasPrimaryKey" 'PrefixI 'True) (S1 ('MetaSel ('Just "hasPrimaryKey_table") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 QualifiedName) :*: S1 ('MetaSel ('Just "hasPrimaryKey_cols") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Text]))) |
Deserialization
beamCheckDeserializers :: (Typeable be, BeamMigrateOnlySqlBackend be, HasDataTypeCreatedCheck (BeamMigrateSqlBackendDataTypeSyntax be)) => BeamDeserializers be Source #
BeamDeserializers
for all the predicates defined in this module