on dev help sign in
haddocks
2eb541dEitan Chatav
squeal-postgresql/src/Squeal/PostgreSQL/Schema.hs+15−12
@@ -5,7 +5,10 @@ Copyright: (c) Eitan Chatav, 2017
5Maintainer: eitan@morphism.tech
5Maintainer: eitan@morphism.tech
6Stability: experimental
6Stability: experimental
7
7
8−A type-level DSL for kinds of PostgreSQL types, constraints, and aliases.
8+This module provides a type-level DSL for kinds of Postgres types,
9+tables, schema, constraints, aliases, enumerated labels, and groupings.
10+It also defines useful type families to operate on these. Finally,
11+it defines an embedding of Haskell types into Postgres types.
9-}
12-}
10
13
11{-# LANGUAGE
14{-# LANGUAGE
@@ -35,6 +38,7 @@ module Squeal.PostgreSQL.Schema
35 , HasOid (..)
38 , HasOid (..)
36 , NullityType (..)
39 , NullityType (..)
37 , ColumnType
40 , ColumnType
41+ -- * Tables
38 , ColumnsType
42 , ColumnsType
39 , RelationType
43 , RelationType
40 , NilRelation
44 , NilRelation
@@ -43,9 +47,6 @@ module Squeal.PostgreSQL.Schema
43 -- * Schema
47 -- * Schema
44 , SchemumType (..)
48 , SchemumType (..)
45 , SchemaType
49 , SchemaType
46− -- * Grouping
47− , Grouping (..)
48− , GroupedBy
49 -- * Constraints
50 -- * Constraints
50 , (:=>)
51 , (:=>)
51 , ColumnConstraint (..)
52 , ColumnConstraint (..)
@@ -67,6 +68,14 @@ module Squeal.PostgreSQL.Schema
67 , HasAll
68 , HasAll
68 , IsLabel (..)
69 , IsLabel (..)
69 , IsQualified (..)
70 , IsQualified (..)
71+ -- * Enumerated Labels
72+ , IsPGlabel (..)
73+ , PGlabel (..)
74+ , renderLabel
75+ , renderLabels
76+ -- * Grouping
77+ , Grouping (..)
78+ , GroupedBy
70 -- * Type Families
79 -- * Type Families
71 , Join
80 , Join
72 , With
81 , With
@@ -92,14 +101,6 @@ module Squeal.PostgreSQL.Schema
92 , TableToRelation
101 , TableToRelation
93 , ConstraintInvolves
102 , ConstraintInvolves
94 , DropIfConstraintsInvolve
103 , DropIfConstraintsInvolve
95− -- * Generics
96− , MapMaybes (..)
97− , Nulls
98− -- * Enum Labels
99− , IsPGlabel (..)
100− , PGlabel (..)
101− , renderLabel
102− , renderLabels
103 -- * Embedding
104 -- * Embedding
104 , PG
105 , PG
105 , EnumFrom
106 , EnumFrom
@@ -116,6 +117,8 @@ module Squeal.PostgreSQL.Schema
116 , FieldTypeOf
117 , FieldTypeOf
117 , FieldTypesOf
118 , FieldTypesOf
118 , RecordCodeOf
119 , RecordCodeOf
120+ , MapMaybes (..)
121+ , Nulls
119 ) where
122 ) where
120
123
121import Control.DeepSeq
124import Control.DeepSeq