Copyright | (c) Eitan Chatav 2019 |
---|---|
Maintainer | eitan@morphism.tech |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
data definition language
Synopsis
- newtype Definition (db0 :: SchemasType) (db1 :: SchemasType) = UnsafeDefinition {}
- (>>>) :: forall k cat (a :: k) (b :: k) (c :: k). Category cat => cat a b -> cat b c -> cat a c
- manipulation_ :: Manipulation '[] db '[] '[] -> Definition db db
Definition
newtype Definition (db0 :: SchemasType) (db1 :: SchemasType) Source #
A Definition
is a statement that changes the schemas of the
database, like a createTable
,
dropTable
,
or alterTable
command.
Definition
s may be composed using the >>>
operator.
Instances
(>>>) :: forall k cat (a :: k) (b :: k) (c :: k). Category cat => cat a b -> cat b c -> cat a c infixr 1 #
Left-to-right composition
:: Manipulation '[] db '[] '[] | no input or output |
-> Definition db db |
A Manipulation
without input or output can be run as a statement
along with other Definition
s, by embedding it using manipulation_
.