opaleye-0.9.5.1: An SQL-generating DSL targeting PostgreSQL
Safe HaskellSafe-Inferred
LanguageHaskell2010

Opaleye.Internal.PrimQuery

Documentation

data LimitOp Source #

Instances

Instances details
Show LimitOp Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

data BinOp Source #

Instances

Instances details
Show BinOp Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

Methods

showsPrec :: Int -> BinOp -> ShowS #

show :: BinOp -> String #

showList :: [BinOp] -> ShowS #

data JoinType Source #

Constructors

LeftJoin 
RightJoin 
FullJoin 

Instances

Instances details
Show JoinType Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

data SemijoinType Source #

Constructors

Semi 
Anti 

Instances

Instances details
Show SemijoinType Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

type Bindings a = [(Symbol, a)] Source #

data Lateral Source #

Constructors

NonLateral 
Lateral 

Instances

Instances details
Monoid Lateral Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

Semigroup Lateral Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

Show Lateral Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

data Recursive Source #

Constructors

NonRecursive 
Recursive 

Instances

Instances details
Show Recursive Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

data PrimQuery' a Source #

Constructors

Unit 
Empty a 
BaseTable TableIdentifier (Bindings PrimExpr) 
Product (NonEmpty (Lateral, PrimQuery' a)) [PrimExpr] 
Aggregate (Bindings (Maybe (AggrOp, [OrderExpr], AggrDistinct), Symbol)) (PrimQuery' a)

The subqueries to take the product of and the restrictions to apply

DistinctOnOrderBy (Maybe (NonEmpty PrimExpr)) [OrderExpr] (PrimQuery' a)

Represents both DISTINCT ON and ORDER BY clauses. In order to represent valid SQL only, DISTINCT ON expressions are always interpreted as the first ORDER BYs when present, preceding any in the provided list. See distinctOnOrderBy.

Limit LimitOp (PrimQuery' a) 
Join JoinType PrimExpr (Lateral, PrimQuery' a) (Lateral, PrimQuery' a) 
Semijoin SemijoinType (PrimQuery' a) (PrimQuery' a) 
Exists Symbol (PrimQuery' a) 
Values [Symbol] (NonEmpty [PrimExpr]) 
Binary BinOp (PrimQuery' a, PrimQuery' a) 
Label String (PrimQuery' a) 
RelExpr PrimExpr (Bindings PrimExpr) 
Rebind Bool (Bindings PrimExpr) (PrimQuery' a) 
ForUpdate (PrimQuery' a) 
With Recursive Symbol [Symbol] (PrimQuery' a) (PrimQuery' a) 

Instances

Instances details
Show a => Show (PrimQuery' a) Source # 
Instance details

Defined in Opaleye.Internal.PrimQuery

data PrimQueryFoldP a p p' Source #

Constructors

PrimQueryFold 

Fields

dimapPrimQueryFold :: (q -> p) -> (p' -> q') -> PrimQueryFoldP a p p' -> PrimQueryFoldP a q q' Source #

primQueryFoldF :: PrimQueryFoldP a p p' -> (PrimQuery' a -> p) -> PrimQuery' a -> p' Source #