@@ -70,6 +70,7 @@ module Squeal.PostgreSQL.Definition
7070 -- * Types
7171 , createType
7272 , createTypeEnum
73+ , dropType
7374 , ColumnTypeExpression (..)
7475 , notNull
7576 , null'
@@ -799,7 +800,13 @@ createType
799800 -> Definition schema (Create comp ('Typedef ('PGcomposite fields)) schema)
800801createType comp fields = UnsafeDefinition $
801802 "CREATE" <+> "TYPE" <+> renderAlias comp <+> "AS" <+> parenthesized
802− (renderCommaSeparated (renderAliasedAs renderTypeExpression) fields)
803+ (renderCommaSeparated (renderAliasedAs renderTypeExpression) fields) <> ";"
804+
805+dropType
806+ :: Has tydef schema ('Typedef ty)
807+ => Alias tydef
808+ -> Definition schema (Drop tydef schema)
809+dropType tydef = UnsafeDefinition $ "DROP" <+> "TYPE" <+> renderAlias tydef <> ";"
803810
804811-- | `ColumnTypeExpression`s are used in `createTable` commands.
805812newtype ColumnTypeExpression (schema :: SchemaType) (ty :: ColumnType)