Safe Haskell | None |
---|---|
Language | Haskell2010 |
Postgres Translate Types
Intermediary / helper types used for translating IR to Postgres SQL.
Synopsis
- data SourcePrefixes = SourcePrefixes {}
- data SelectSlicing = SelectSlicing {}
- data DistinctAndOrderByExpr = ASorting {}
- data SelectSorting
- data SortingAndSlicing = SortingAndSlicing {}
- data SelectSource = SelectSource {}
- noSortingAndSlicing :: SortingAndSlicing
- noSlicing :: SelectSlicing
- orderByForJsonAgg :: SelectSource -> Maybe OrderByExp
- data ApplySortingAndSlicing = ApplySortingAndSlicing {}
- applySortingAndSlicing :: SortingAndSlicing -> ApplySortingAndSlicing
- data SelectNode = SelectNode {
- _snExtractors :: HashMap ColumnAlias SQLExp
- _snJoinTree :: JoinTree
- data ObjectSelectSource = ObjectSelectSource {}
- objectSelectSourceToSelectSource :: ObjectSelectSource -> SelectSource
- data ObjectRelationSource = ObjectRelationSource {}
- data ArrayRelationSource = ArrayRelationSource {
- _arsAlias :: TableAlias
- _arsRelationMapping :: HashMap PGCol PGCol
- _arsSelectSource :: SelectSource
- data MultiRowSelectNode = MultiRowSelectNode {}
- data ComputedFieldTableSetSource = ComputedFieldTableSetSource {}
- data ArrayConnectionSource = ArrayConnectionSource {}
- data JoinTree = JoinTree {}
- data PermissionLimitSubQuery
- type SimilarArrayFields = HashMap FieldName [FieldName]
Documentation
data SourcePrefixes Source #
SourcePrefixes | |
|
Instances
data SelectSlicing Source #
Select portion of rows generated by the query using limit and offset
Instances
data DistinctAndOrderByExpr Source #
Instances
data SelectSorting Source #
Sorting with -- Note [Optimizing queries using limit/offset])
Instances
data SortingAndSlicing Source #
Instances
data SelectSource Source #
Instances
data SelectNode Source #
SelectNode | |
|
Instances
Eq SelectNode Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types (==) :: SelectNode -> SelectNode -> Bool # (/=) :: SelectNode -> SelectNode -> Bool # | |
Semigroup SelectNode Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types (<>) :: SelectNode -> SelectNode -> SelectNode # sconcat :: NonEmpty SelectNode -> SelectNode # stimes :: Integral b => b -> SelectNode -> SelectNode # |
data ObjectSelectSource Source #
Instances
data ObjectRelationSource Source #
ObjectRelationSource | |
|
Instances
data ArrayRelationSource Source #
ArrayRelationSource | |
|
Instances
data MultiRowSelectNode Source #
Instances
Eq MultiRowSelectNode Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types (==) :: MultiRowSelectNode -> MultiRowSelectNode -> Bool # (/=) :: MultiRowSelectNode -> MultiRowSelectNode -> Bool # | |
Semigroup MultiRowSelectNode Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types (<>) :: MultiRowSelectNode -> MultiRowSelectNode -> MultiRowSelectNode # sconcat :: NonEmpty MultiRowSelectNode -> MultiRowSelectNode # stimes :: Integral b => b -> MultiRowSelectNode -> MultiRowSelectNode # |
data ComputedFieldTableSetSource Source #
Instances
data ArrayConnectionSource Source #
ArrayConnectionSource | |
|
Instances
data PermissionLimitSubQuery Source #
PLSQRequired Int | Permission limit |
PLSQNotRequired |
Instances
Eq PermissionLimitSubQuery Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types | |
Show PermissionLimitSubQuery Source # | |
Defined in Hasura.Backends.Postgres.Translate.Types showsPrec :: Int -> PermissionLimitSubQuery -> ShowS # show :: PermissionLimitSubQuery -> String # showList :: [PermissionLimitSubQuery] -> ShowS # |
type SimilarArrayFields = HashMap FieldName [FieldName] Source #