graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellNone
LanguageHaskell2010

Hasura.Backends.Postgres.SQL.DML

Description

Postgres SQL DML

Provide types and combinators for defining Postgres SQL queries and mutations.

Synopsis

Documentation

data Select Source #

An select statement that does not require mutation CTEs.

See SelectWithG or SelectWith for select statements with mutations as CTEs.

Constructors

Select 

Fields

Instances

Instances details
Eq Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: Select -> Select -> Bool #

(/=) :: Select -> Select -> Bool #

Data Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Select -> c Select #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Select #

toConstr :: Select -> Constr #

dataTypeOf :: Select -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Select) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Select) #

gmapT :: (forall b. Data b => b -> b) -> Select -> Select #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Select -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Select -> r #

gmapQ :: (forall d. Data d => d -> u) -> Select -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Select -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Select -> m Select #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Select -> m Select #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Select -> m Select #

Show Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep Select :: Type -> Type #

Methods

from :: Select -> Rep Select x #

to :: Rep Select x -> Select #

NFData Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: Select -> () #

Hashable Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> Select -> Int

hash :: Select -> Int

Cacheable Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: Select -> Builder Source #

type Rep Select Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

mkSelect :: Select Source #

An empty select statement.

newtype LimitExp Source #

Constructors

LimitExp SQLExp 

Instances

Instances details
Eq LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LimitExp -> c LimitExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LimitExp #

toConstr :: LimitExp -> Constr #

dataTypeOf :: LimitExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LimitExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LimitExp) #

gmapT :: (forall b. Data b => b -> b) -> LimitExp -> LimitExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LimitExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LimitExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> LimitExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> LimitExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> LimitExp -> m LimitExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LimitExp -> m LimitExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LimitExp -> m LimitExp #

Show LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: LimitExp -> () #

Hashable LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL LimitExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: LimitExp -> Builder Source #

newtype OffsetExp Source #

Constructors

OffsetExp SQLExp 

Instances

Instances details
Eq OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OffsetExp -> c OffsetExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OffsetExp #

toConstr :: OffsetExp -> Constr #

dataTypeOf :: OffsetExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OffsetExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OffsetExp) #

gmapT :: (forall b. Data b => b -> b) -> OffsetExp -> OffsetExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OffsetExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OffsetExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> OffsetExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OffsetExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OffsetExp -> m OffsetExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OffsetExp -> m OffsetExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OffsetExp -> m OffsetExp #

Show OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: OffsetExp -> () #

Hashable OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL OffsetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: OffsetExp -> Builder Source #

newtype OrderByExp Source #

Instances

Instances details
Eq OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OrderByExp -> c OrderByExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OrderByExp #

toConstr :: OrderByExp -> Constr #

dataTypeOf :: OrderByExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OrderByExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OrderByExp) #

gmapT :: (forall b. Data b => b -> b) -> OrderByExp -> OrderByExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OrderByExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OrderByExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> OrderByExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OrderByExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OrderByExp -> m OrderByExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderByExp -> m OrderByExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderByExp -> m OrderByExp #

Show OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: OrderByExp -> () #

Hashable OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL OrderByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: OrderByExp -> Builder Source #

data OrderByItem Source #

 

Instances

Instances details
Eq OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OrderByItem -> c OrderByItem #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OrderByItem #

toConstr :: OrderByItem -> Constr #

dataTypeOf :: OrderByItem -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OrderByItem) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OrderByItem) #

gmapT :: (forall b. Data b => b -> b) -> OrderByItem -> OrderByItem #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OrderByItem -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OrderByItem -> r #

gmapQ :: (forall d. Data d => d -> u) -> OrderByItem -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OrderByItem -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OrderByItem -> m OrderByItem #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderByItem -> m OrderByItem #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderByItem -> m OrderByItem #

Show OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep OrderByItem :: Type -> Type #

NFData OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: OrderByItem -> () #

Hashable OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: OrderByItem -> Builder Source #

type Rep OrderByItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep OrderByItem = D1 ('MetaData "OrderByItem" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "OrderByItem" 'PrefixI 'True) (S1 ('MetaSel ('Just "oExpression") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: (S1 ('MetaSel ('Just "oOrdering") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe OrderType)) :*: S1 ('MetaSel ('Just "oNullsOrder") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe NullsOrder)))))

data OrderType Source #

Order by ascending or descending

Constructors

OTAsc 
OTDesc 

Instances

Instances details
Eq OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OrderType -> c OrderType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OrderType #

toConstr :: OrderType -> Constr #

dataTypeOf :: OrderType -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OrderType) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OrderType) #

gmapT :: (forall b. Data b => b -> b) -> OrderType -> OrderType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OrderType -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OrderType -> r #

gmapQ :: (forall d. Data d => d -> u) -> OrderType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> OrderType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> OrderType -> m OrderType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderType -> m OrderType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OrderType -> m OrderType #

Show OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep OrderType :: Type -> Type #

NFData OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: OrderType -> () #

Hashable OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

FromJSON OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

parseJSON :: Value -> Parser OrderType

parseJSONList :: Value -> Parser [OrderType]

ToJSON OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toJSON :: OrderType -> Value

toEncoding :: OrderType -> Encoding

toJSONList :: [OrderType] -> Value

toEncodingList :: [OrderType] -> Encoding

Cacheable OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: OrderType -> Builder Source #

type Rep OrderType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep OrderType = D1 ('MetaData "OrderType" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "OTAsc" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OTDesc" 'PrefixI 'False) (U1 :: Type -> Type))

data NullsOrder Source #

Constructors

NullsFirst 
NullsLast 

Instances

Instances details
Eq NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NullsOrder -> c NullsOrder #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NullsOrder #

toConstr :: NullsOrder -> Constr #

dataTypeOf :: NullsOrder -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NullsOrder) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NullsOrder) #

gmapT :: (forall b. Data b => b -> b) -> NullsOrder -> NullsOrder #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NullsOrder -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NullsOrder -> r #

gmapQ :: (forall d. Data d => d -> u) -> NullsOrder -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> NullsOrder -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> NullsOrder -> m NullsOrder #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NullsOrder -> m NullsOrder #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NullsOrder -> m NullsOrder #

Show NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep NullsOrder :: Type -> Type #

NFData NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: NullsOrder -> () #

Hashable NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

FromJSON NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

parseJSON :: Value -> Parser NullsOrder

parseJSONList :: Value -> Parser [NullsOrder]

ToJSON NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toJSON :: NullsOrder -> Value

toEncoding :: NullsOrder -> Encoding

toJSONList :: [NullsOrder] -> Value

toEncodingList :: [NullsOrder] -> Encoding

Cacheable NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: NullsOrder -> Builder Source #

type Rep NullsOrder Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep NullsOrder = D1 ('MetaData "NullsOrder" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "NullsFirst" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NullsLast" 'PrefixI 'False) (U1 :: Type -> Type))

newtype GroupByExp Source #

Constructors

GroupByExp [SQLExp] 

Instances

Instances details
Eq GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GroupByExp -> c GroupByExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GroupByExp #

toConstr :: GroupByExp -> Constr #

dataTypeOf :: GroupByExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GroupByExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GroupByExp) #

gmapT :: (forall b. Data b => b -> b) -> GroupByExp -> GroupByExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GroupByExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GroupByExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> GroupByExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> GroupByExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> GroupByExp -> m GroupByExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GroupByExp -> m GroupByExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GroupByExp -> m GroupByExp #

Show GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: GroupByExp -> () #

Hashable GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL GroupByExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: GroupByExp -> Builder Source #

newtype FromExp Source #

Constructors

FromExp [FromItem] 

Instances

Instances details
Eq FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: FromExp -> FromExp -> Bool #

(/=) :: FromExp -> FromExp -> Bool #

Data FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FromExp -> c FromExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FromExp #

toConstr :: FromExp -> Constr #

dataTypeOf :: FromExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FromExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FromExp) #

gmapT :: (forall b. Data b => b -> b) -> FromExp -> FromExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FromExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FromExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> FromExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FromExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FromExp -> m FromExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FromExp -> m FromExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FromExp -> m FromExp #

Show FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: FromExp -> () #

Hashable FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> FromExp -> Int

hash :: FromExp -> Int

Cacheable FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FromExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: FromExp -> Builder Source #

newtype HavingExp Source #

Constructors

HavingExp BoolExp 

Instances

Instances details
Eq HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HavingExp -> c HavingExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HavingExp #

toConstr :: HavingExp -> Constr #

dataTypeOf :: HavingExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HavingExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HavingExp) #

gmapT :: (forall b. Data b => b -> b) -> HavingExp -> HavingExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HavingExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HavingExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> HavingExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> HavingExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> HavingExp -> m HavingExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HavingExp -> m HavingExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HavingExp -> m HavingExp #

Show HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: HavingExp -> () #

Hashable HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL HavingExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: HavingExp -> Builder Source #

newtype WhereFrag Source #

Constructors

WhereFrag 

Instances

Instances details
Eq WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WhereFrag -> c WhereFrag #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WhereFrag #

toConstr :: WhereFrag -> Constr #

dataTypeOf :: WhereFrag -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c WhereFrag) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WhereFrag) #

gmapT :: (forall b. Data b => b -> b) -> WhereFrag -> WhereFrag #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WhereFrag -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WhereFrag -> r #

gmapQ :: (forall d. Data d => d -> u) -> WhereFrag -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WhereFrag -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WhereFrag -> m WhereFrag #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WhereFrag -> m WhereFrag #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WhereFrag -> m WhereFrag #

Show WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: WhereFrag -> () #

Hashable WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL WhereFrag Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: WhereFrag -> Builder Source #

data Qual Source #

Instances

Instances details
Eq Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: Qual -> Qual -> Bool #

(/=) :: Qual -> Qual -> Bool #

Data Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Qual -> c Qual #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Qual #

toConstr :: Qual -> Constr #

dataTypeOf :: Qual -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Qual) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Qual) #

gmapT :: (forall b. Data b => b -> b) -> Qual -> Qual #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Qual -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Qual -> r #

gmapQ :: (forall d. Data d => d -> u) -> Qual -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Qual -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Qual -> m Qual #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Qual -> m Qual #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Qual -> m Qual #

Show Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

showsPrec :: Int -> Qual -> ShowS #

show :: Qual -> String #

showList :: [Qual] -> ShowS #

Generic Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep Qual :: Type -> Type #

Methods

from :: Qual -> Rep Qual x #

to :: Rep Qual x -> Qual #

NFData Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: Qual -> () #

Hashable Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> Qual -> Int

hash :: Qual -> Int

Cacheable Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

unchanged :: Accesses -> Qual -> Qual -> Bool Source #

ToSQL Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: Qual -> Builder Source #

type Rep Qual Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

data QIdentifier Source #

Instances

Instances details
Eq QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> QIdentifier -> c QIdentifier #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c QIdentifier #

toConstr :: QIdentifier -> Constr #

dataTypeOf :: QIdentifier -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c QIdentifier) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c QIdentifier) #

gmapT :: (forall b. Data b => b -> b) -> QIdentifier -> QIdentifier #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> QIdentifier -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> QIdentifier -> r #

gmapQ :: (forall d. Data d => d -> u) -> QIdentifier -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> QIdentifier -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> QIdentifier -> m QIdentifier #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> QIdentifier -> m QIdentifier #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> QIdentifier -> m QIdentifier #

Show QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep QIdentifier :: Type -> Type #

NFData QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: QIdentifier -> () #

Hashable QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: QIdentifier -> Builder Source #

type Rep QIdentifier Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep QIdentifier = D1 ('MetaData "QIdentifier" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "QIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Qual) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier)))

data ColumnOp Source #

Constructors

ColumnOp 

Fields

Instances

Instances details
Eq ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ColumnOp -> c ColumnOp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ColumnOp #

toConstr :: ColumnOp -> Constr #

dataTypeOf :: ColumnOp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ColumnOp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ColumnOp) #

gmapT :: (forall b. Data b => b -> b) -> ColumnOp -> ColumnOp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ColumnOp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ColumnOp -> r #

gmapQ :: (forall d. Data d => d -> u) -> ColumnOp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ColumnOp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ColumnOp -> m ColumnOp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ColumnOp -> m ColumnOp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ColumnOp -> m ColumnOp #

Show ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep ColumnOp :: Type -> Type #

Methods

from :: ColumnOp -> Rep ColumnOp x #

to :: Rep ColumnOp x -> ColumnOp #

NFData ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: ColumnOp -> () #

Hashable ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep ColumnOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep ColumnOp = D1 ('MetaData "ColumnOp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "ColumnOp" 'PrefixI 'True) (S1 ('MetaSel ('Just "_colOp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLOp) :*: S1 ('MetaSel ('Just "_colExp") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp)))

newtype SQLOp Source #

Constructors

SQLOp 

Fields

Instances

Instances details
Eq SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: SQLOp -> SQLOp -> Bool #

(/=) :: SQLOp -> SQLOp -> Bool #

Data SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SQLOp -> c SQLOp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SQLOp #

toConstr :: SQLOp -> Constr #

dataTypeOf :: SQLOp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SQLOp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SQLOp) #

gmapT :: (forall b. Data b => b -> b) -> SQLOp -> SQLOp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SQLOp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SQLOp -> r #

gmapQ :: (forall d. Data d => d -> u) -> SQLOp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SQLOp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SQLOp -> m SQLOp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SQLOp -> m SQLOp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SQLOp -> m SQLOp #

Show SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

showsPrec :: Int -> SQLOp -> ShowS #

show :: SQLOp -> String #

showList :: [SQLOp] -> ShowS #

NFData SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: SQLOp -> () #

Hashable SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> SQLOp -> Int

hash :: SQLOp -> Int

Cacheable SQLOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

newtype TypeAnn Source #

Constructors

TypeAnn 

Fields

Instances

Instances details
Eq TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: TypeAnn -> TypeAnn -> Bool #

(/=) :: TypeAnn -> TypeAnn -> Bool #

Data TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TypeAnn -> c TypeAnn #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TypeAnn #

toConstr :: TypeAnn -> Constr #

dataTypeOf :: TypeAnn -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TypeAnn) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TypeAnn) #

gmapT :: (forall b. Data b => b -> b) -> TypeAnn -> TypeAnn #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TypeAnn -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TypeAnn -> r #

gmapQ :: (forall d. Data d => d -> u) -> TypeAnn -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TypeAnn -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TypeAnn -> m TypeAnn #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeAnn -> m TypeAnn #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TypeAnn -> m TypeAnn #

Show TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: TypeAnn -> () #

Hashable TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> TypeAnn -> Int

hash :: TypeAnn -> Int

Cacheable TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL TypeAnn Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: TypeAnn -> Builder Source #

data CountType Source #

Constructors

CTStar 
CTSimple [PGCol] 
CTDistinct [PGCol] 

Instances

Instances details
Eq CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CountType -> c CountType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CountType #

toConstr :: CountType -> Constr #

dataTypeOf :: CountType -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CountType) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CountType) #

gmapT :: (forall b. Data b => b -> b) -> CountType -> CountType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CountType -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CountType -> r #

gmapQ :: (forall d. Data d => d -> u) -> CountType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CountType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CountType -> m CountType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CountType -> m CountType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CountType -> m CountType #

Show CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep CountType :: Type -> Type #

NFData CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: CountType -> () #

Hashable CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: CountType -> Builder Source #

type Rep CountType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep CountType = D1 ('MetaData "CountType" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "CTStar" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "CTSimple" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [PGCol])) :+: C1 ('MetaCons "CTDistinct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [PGCol]))))

newtype TupleExp Source #

Constructors

TupleExp [SQLExp] 

Instances

Instances details
Eq TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TupleExp -> c TupleExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TupleExp #

toConstr :: TupleExp -> Constr #

dataTypeOf :: TupleExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TupleExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TupleExp) #

gmapT :: (forall b. Data b => b -> b) -> TupleExp -> TupleExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TupleExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TupleExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> TupleExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TupleExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TupleExp -> m TupleExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TupleExp -> m TupleExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TupleExp -> m TupleExp #

Show TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: TupleExp -> () #

Hashable TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL TupleExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: TupleExp -> Builder Source #

data SQLExp Source #

Constructors

SEPrep Int 
SENull 
SELit Text 
SEUnsafe Text 
SESelect Select 
SEStar (Maybe Qual)

all fields (*) or all fields from relation (iden.*)

SEIdentifier Identifier

A column name

SERowIdentifier Identifier

SEIdentifier and SERowIdentifier are distinguished for easier rewrite rules

SEQIdentifier QIdentifier

A qualified column name

SEFnApp Text [SQLExp] (Maybe OrderByExp)

this is used to apply a sql function to an expression. The Text is the function name

SEOpApp SQLOp [SQLExp] 
SETyAnn SQLExp TypeAnn 
SECond BoolExp SQLExp SQLExp 
SEBool BoolExp 
SEExcluded Identifier 
SEArray [SQLExp] 
SEArrayIndex SQLExp SQLExp 
SETuple TupleExp 
SECount CountType 
SENamedArg Identifier SQLExp 
SEFunction FunctionExp 

Instances

Instances details
Eq SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: SQLExp -> SQLExp -> Bool #

(/=) :: SQLExp -> SQLExp -> Bool #

Data SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SQLExp -> c SQLExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SQLExp #

toConstr :: SQLExp -> Constr #

dataTypeOf :: SQLExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SQLExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SQLExp) #

gmapT :: (forall b. Data b => b -> b) -> SQLExp -> SQLExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SQLExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SQLExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> SQLExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SQLExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SQLExp -> m SQLExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SQLExp -> m SQLExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SQLExp -> m SQLExp #

Show SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep SQLExp :: Type -> Type #

Methods

from :: SQLExp -> Rep SQLExp x #

to :: Rep SQLExp x -> SQLExp #

NFData SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: SQLExp -> () #

Hashable SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> SQLExp -> Int

hash :: SQLExp -> Int

ToJSON SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toJSON :: SQLExp -> Value

toEncoding :: SQLExp -> Encoding

toJSONList :: [SQLExp] -> Value

toEncodingList :: [SQLExp] -> Encoding

Cacheable SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SQLExp -> Builder Source #

type Rep SQLExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep SQLExp = D1 ('MetaData "SQLExp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) ((((C1 ('MetaCons "SEPrep" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "SENull" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "SELit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)) :+: (C1 ('MetaCons "SEUnsafe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)) :+: C1 ('MetaCons "SESelect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Select))))) :+: ((C1 ('MetaCons "SEStar" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Qual))) :+: C1 ('MetaCons "SEIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier))) :+: (C1 ('MetaCons "SERowIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier)) :+: (C1 ('MetaCons "SEQIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 QIdentifier)) :+: C1 ('MetaCons "SEFnApp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp]) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe OrderByExp)))))))) :+: (((C1 ('MetaCons "SEOpApp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLOp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp])) :+: C1 ('MetaCons "SETyAnn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TypeAnn))) :+: (C1 ('MetaCons "SECond" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp))) :+: (C1 ('MetaCons "SEBool" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp)) :+: C1 ('MetaCons "SEExcluded" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier))))) :+: ((C1 ('MetaCons "SEArray" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp])) :+: (C1 ('MetaCons "SEArrayIndex" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp)) :+: C1 ('MetaCons "SETuple" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TupleExp)))) :+: (C1 ('MetaCons "SECount" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CountType)) :+: (C1 ('MetaCons "SENamedArg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp)) :+: C1 ('MetaCons "SEFunction" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionExp)))))))

newtype ColumnAlias Source #

Represents an alias assignment for a column

Constructors

ColumnAlias 

Instances

Instances details
Eq ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ColumnAlias -> c ColumnAlias #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ColumnAlias #

toConstr :: ColumnAlias -> Constr #

dataTypeOf :: ColumnAlias -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ColumnAlias) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ColumnAlias) #

gmapT :: (forall b. Data b => b -> b) -> ColumnAlias -> ColumnAlias #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ColumnAlias -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ColumnAlias -> r #

gmapQ :: (forall d. Data d => d -> u) -> ColumnAlias -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ColumnAlias -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ColumnAlias -> m ColumnAlias #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ColumnAlias -> m ColumnAlias #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ColumnAlias -> m ColumnAlias #

Show ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: ColumnAlias -> () #

Hashable ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

IsIdentifier ColumnAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

columnAliasToSqlWithAs :: ColumnAlias -> Builder Source #

Convert a column alias assignment to SQL _with_ AS prefix

columnAliasToSqlWithoutAs :: ColumnAlias -> Builder Source #

Convert a column alias assignment to SQL _without_ AS prefix

newtype TableAlias Source #

Represents an alias assignment for a table, relation or row

Constructors

TableAlias 

Instances

Instances details
Eq TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TableAlias -> c TableAlias #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TableAlias #

toConstr :: TableAlias -> Constr #

dataTypeOf :: TableAlias -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TableAlias) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TableAlias) #

gmapT :: (forall b. Data b => b -> b) -> TableAlias -> TableAlias #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TableAlias -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TableAlias -> r #

gmapQ :: (forall d. Data d => d -> u) -> TableAlias -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TableAlias -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TableAlias -> m TableAlias #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TableAlias -> m TableAlias #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TableAlias -> m TableAlias #

Show TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep TableAlias :: Type -> Type #

NFData TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: TableAlias -> () #

Hashable TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

IsIdentifier TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep TableAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep TableAlias = D1 ('MetaData "TableAlias" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'True) (C1 ('MetaCons "TableAlias" 'PrefixI 'True) (S1 ('MetaSel ('Just "getTableAlias") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Identifier)))

tableAliasToSqlWithAs :: TableAlias -> Builder Source #

Convert a table alias assignment to SQL _with_ AS prefix

tableAliasToSqlWithoutAs :: TableAlias -> Builder Source #

Convert a table alias assignment to SQL _without_ AS prefix

data Extractor Source #

Extractor can be used to apply Postgres alias to a column

Instances

Instances details
Eq Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Extractor -> c Extractor #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Extractor #

toConstr :: Extractor -> Constr #

dataTypeOf :: Extractor -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Extractor) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Extractor) #

gmapT :: (forall b. Data b => b -> b) -> Extractor -> Extractor #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Extractor -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Extractor -> r #

gmapQ :: (forall d. Data d => d -> u) -> Extractor -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Extractor -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Extractor -> m Extractor #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Extractor -> m Extractor #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Extractor -> m Extractor #

Show Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep Extractor :: Type -> Type #

NFData Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: Extractor -> () #

Hashable Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: Extractor -> Builder Source #

type Rep Extractor Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep Extractor = D1 ('MetaData "Extractor" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "Extractor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ColumnAlias))))

data DistinctExpr Source #

Instances

Instances details
Eq DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DistinctExpr -> c DistinctExpr #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DistinctExpr #

toConstr :: DistinctExpr -> Constr #

dataTypeOf :: DistinctExpr -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DistinctExpr) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DistinctExpr) #

gmapT :: (forall b. Data b => b -> b) -> DistinctExpr -> DistinctExpr #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DistinctExpr -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DistinctExpr -> r #

gmapQ :: (forall d. Data d => d -> u) -> DistinctExpr -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DistinctExpr -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DistinctExpr -> m DistinctExpr #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DistinctExpr -> m DistinctExpr #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DistinctExpr -> m DistinctExpr #

Show DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep DistinctExpr :: Type -> Type #

NFData DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: DistinctExpr -> () #

Hashable DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: DistinctExpr -> Builder Source #

type Rep DistinctExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep DistinctExpr = D1 ('MetaData "DistinctExpr" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "DistinctSimple" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DistinctOn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp])))

data FunctionArgs Source #

Constructors

FunctionArgs 

Fields

Instances

Instances details
Eq FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionArgs -> c FunctionArgs #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionArgs #

toConstr :: FunctionArgs -> Constr #

dataTypeOf :: FunctionArgs -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunctionArgs) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionArgs) #

gmapT :: (forall b. Data b => b -> b) -> FunctionArgs -> FunctionArgs #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionArgs -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionArgs -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionArgs -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionArgs -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionArgs -> m FunctionArgs #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionArgs -> m FunctionArgs #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionArgs -> m FunctionArgs #

Show FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep FunctionArgs :: Type -> Type #

NFData FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: FunctionArgs -> () #

Hashable FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: FunctionArgs -> Builder Source #

type Rep FunctionArgs Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FunctionArgs = D1 ('MetaData "FunctionArgs" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionArgs" 'PrefixI 'True) (S1 ('MetaSel ('Just "fasPostional") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp]) :*: S1 ('MetaSel ('Just "fasNamed") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (HashMap Text SQLExp))))

data FunctionDefinitionListItem Source #

Instances

Instances details
Eq FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionDefinitionListItem -> c FunctionDefinitionListItem #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionDefinitionListItem #

toConstr :: FunctionDefinitionListItem -> Constr #

dataTypeOf :: FunctionDefinitionListItem -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunctionDefinitionListItem) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionDefinitionListItem) #

gmapT :: (forall b. Data b => b -> b) -> FunctionDefinitionListItem -> FunctionDefinitionListItem #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionDefinitionListItem -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionDefinitionListItem -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionDefinitionListItem -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionDefinitionListItem -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionDefinitionListItem -> m FunctionDefinitionListItem #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionDefinitionListItem -> m FunctionDefinitionListItem #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionDefinitionListItem -> m FunctionDefinitionListItem #

Show FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep FunctionDefinitionListItem :: Type -> Type #

NFData FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Hashable FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FunctionDefinitionListItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FunctionDefinitionListItem = D1 ('MetaData "FunctionDefinitionListItem" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionDefinitionListItem" 'PrefixI 'True) (S1 ('MetaSel ('Just "_dliColumn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ColumnAlias) :*: S1 ('MetaSel ('Just "_dliType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 PGScalarType)))

data FunctionAlias Source #

We can alias the result of a function call that returns a SETOF RECORD by naming the result relation, and the columns and their types. For example:

SELECT * FROM
function_returns_record(arg1, arg2 ...) AS relation_name(column_1 column_1_type, column_2 column_2_type, ...)

Note: a function that returns a table (instead of a record) cannot name the types as seen in the above example.

Instances

Instances details
Eq FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionAlias -> c FunctionAlias #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionAlias #

toConstr :: FunctionAlias -> Constr #

dataTypeOf :: FunctionAlias -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunctionAlias) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionAlias) #

gmapT :: (forall b. Data b => b -> b) -> FunctionAlias -> FunctionAlias #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionAlias -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionAlias -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionAlias -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionAlias -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionAlias -> m FunctionAlias #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionAlias -> m FunctionAlias #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionAlias -> m FunctionAlias #

Show FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep FunctionAlias :: Type -> Type #

NFData FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: FunctionAlias -> () #

Hashable FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: FunctionAlias -> Builder Source #

type Rep FunctionAlias Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FunctionAlias = D1 ('MetaData "FunctionAlias" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionAlias" 'PrefixI 'True) (S1 ('MetaSel ('Just "_faIdentifier") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TableAlias) :*: S1 ('MetaSel ('Just "_faDefinitionList") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [FunctionDefinitionListItem]))))

data FunctionExp Source #

A function call

Instances

Instances details
Eq FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunctionExp -> c FunctionExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FunctionExp #

toConstr :: FunctionExp -> Constr #

dataTypeOf :: FunctionExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FunctionExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FunctionExp) #

gmapT :: (forall b. Data b => b -> b) -> FunctionExp -> FunctionExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunctionExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunctionExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunctionExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunctionExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunctionExp -> m FunctionExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionExp -> m FunctionExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunctionExp -> m FunctionExp #

Show FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep FunctionExp :: Type -> Type #

NFData FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: FunctionExp -> () #

Hashable FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: FunctionExp -> Builder Source #

type Rep FunctionExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FunctionExp = D1 ('MetaData "FunctionExp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "FunctionExp" 'PrefixI 'True) (S1 ('MetaSel ('Just "feName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 QualifiedFunction) :*: (S1 ('MetaSel ('Just "feArgs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionArgs) :*: S1 ('MetaSel ('Just "feAlias") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe FunctionAlias)))))

data FromItem Source #

Constructors

FISimple QualifiedTable (Maybe TableAlias)

A simple table

FIIdentifier Identifier

An identifier (from CTEs)

FIFunc FunctionExp

A function call (that should return a relation (SETOF) and not a scalar)

FIUnnest [SQLExp] TableAlias [ColumnAlias]

unnest converts (an) array(s) to a relation.

We have: * The unnest function arguments * The relation alias * A list of column aliases

See unnest in https://www.postgresql.org/docs/current/functions-array.html.

FISelect Lateral Select TableAlias 
FISelectWith Lateral (SelectWithG Select) TableAlias 
FIValues ValuesExp TableAlias (Maybe [ColumnAlias]) 
FIJoin JoinExpr 

Instances

Instances details
Eq FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FromItem -> c FromItem #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FromItem #

toConstr :: FromItem -> Constr #

dataTypeOf :: FromItem -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FromItem) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FromItem) #

gmapT :: (forall b. Data b => b -> b) -> FromItem -> FromItem #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FromItem -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FromItem -> r #

gmapQ :: (forall d. Data d => d -> u) -> FromItem -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FromItem -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FromItem -> m FromItem #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FromItem -> m FromItem #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FromItem -> m FromItem #

Show FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep FromItem :: Type -> Type #

Methods

from :: FromItem -> Rep FromItem x #

to :: Rep FromItem x -> FromItem #

NFData FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: FromItem -> () #

Hashable FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: FromItem -> Builder Source #

type Rep FromItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep FromItem = D1 ('MetaData "FromItem" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (((C1 ('MetaCons "FISimple" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 QualifiedTable) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe TableAlias))) :+: C1 ('MetaCons "FIIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Identifier))) :+: (C1 ('MetaCons "FIFunc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 FunctionExp)) :+: C1 ('MetaCons "FIUnnest" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp]) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TableAlias) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [ColumnAlias]))))) :+: ((C1 ('MetaCons "FISelect" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Lateral) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Select) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TableAlias))) :+: C1 ('MetaCons "FISelectWith" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Lateral) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SelectWithG Select)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TableAlias)))) :+: (C1 ('MetaCons "FIValues" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ValuesExp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TableAlias) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [ColumnAlias])))) :+: C1 ('MetaCons "FIJoin" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 JoinExpr)))))

newtype Lateral Source #

Constructors

Lateral Bool 

Instances

Instances details
Eq Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: Lateral -> Lateral -> Bool #

(/=) :: Lateral -> Lateral -> Bool #

Data Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Lateral -> c Lateral #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Lateral #

toConstr :: Lateral -> Constr #

dataTypeOf :: Lateral -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Lateral) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Lateral) #

gmapT :: (forall b. Data b => b -> b) -> Lateral -> Lateral #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Lateral -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Lateral -> r #

gmapQ :: (forall d. Data d => d -> u) -> Lateral -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Lateral -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Lateral -> m Lateral #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Lateral -> m Lateral #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Lateral -> m Lateral #

Show Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: Lateral -> () #

Hashable Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> Lateral -> Int

hash :: Lateral -> Int

Cacheable Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL Lateral Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: Lateral -> Builder Source #

data JoinExpr Source #

Instances

Instances details
Eq JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JoinExpr -> c JoinExpr #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JoinExpr #

toConstr :: JoinExpr -> Constr #

dataTypeOf :: JoinExpr -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JoinExpr) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JoinExpr) #

gmapT :: (forall b. Data b => b -> b) -> JoinExpr -> JoinExpr #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JoinExpr -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JoinExpr -> r #

gmapQ :: (forall d. Data d => d -> u) -> JoinExpr -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> JoinExpr -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JoinExpr -> m JoinExpr #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinExpr -> m JoinExpr #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinExpr -> m JoinExpr #

Show JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep JoinExpr :: Type -> Type #

Methods

from :: JoinExpr -> Rep JoinExpr x #

to :: Rep JoinExpr x -> JoinExpr #

NFData JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: JoinExpr -> () #

Hashable JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: JoinExpr -> Builder Source #

type Rep JoinExpr Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

data JoinType Source #

Instances

Instances details
Eq JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JoinType -> c JoinType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JoinType #

toConstr :: JoinType -> Constr #

dataTypeOf :: JoinType -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JoinType) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JoinType) #

gmapT :: (forall b. Data b => b -> b) -> JoinType -> JoinType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JoinType -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JoinType -> r #

gmapQ :: (forall d. Data d => d -> u) -> JoinType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> JoinType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JoinType -> m JoinType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinType -> m JoinType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinType -> m JoinType #

Show JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep JoinType :: Type -> Type #

Methods

from :: JoinType -> Rep JoinType x #

to :: Rep JoinType x -> JoinType #

NFData JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: JoinType -> () #

Hashable JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: JoinType -> Builder Source #

type Rep JoinType Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep JoinType = D1 ('MetaData "JoinType" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) ((C1 ('MetaCons "Inner" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LeftOuter" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "RightOuter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FullOuter" 'PrefixI 'False) (U1 :: Type -> Type)))

data JoinCond Source #

Instances

Instances details
Eq JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JoinCond -> c JoinCond #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JoinCond #

toConstr :: JoinCond -> Constr #

dataTypeOf :: JoinCond -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JoinCond) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JoinCond) #

gmapT :: (forall b. Data b => b -> b) -> JoinCond -> JoinCond #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JoinCond -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JoinCond -> r #

gmapQ :: (forall d. Data d => d -> u) -> JoinCond -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> JoinCond -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JoinCond -> m JoinCond #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinCond -> m JoinCond #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JoinCond -> m JoinCond #

Show JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep JoinCond :: Type -> Type #

Methods

from :: JoinCond -> Rep JoinCond x #

to :: Rep JoinCond x -> JoinCond #

NFData JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: JoinCond -> () #

Hashable JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: JoinCond -> Builder Source #

type Rep JoinCond Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep JoinCond = D1 ('MetaData "JoinCond" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "JoinOn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp)) :+: C1 ('MetaCons "JoinUsing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Identifier])))

data BoolExp Source #

Instances

Instances details
Eq BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: BoolExp -> BoolExp -> Bool #

(/=) :: BoolExp -> BoolExp -> Bool #

Data BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BoolExp -> c BoolExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BoolExp #

toConstr :: BoolExp -> Constr #

dataTypeOf :: BoolExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BoolExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BoolExp) #

gmapT :: (forall b. Data b => b -> b) -> BoolExp -> BoolExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BoolExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BoolExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> BoolExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> BoolExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> BoolExp -> m BoolExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BoolExp -> m BoolExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BoolExp -> m BoolExp #

Show BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep BoolExp :: Type -> Type #

Methods

from :: BoolExp -> Rep BoolExp x #

to :: Rep BoolExp x -> BoolExp #

NFData BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: BoolExp -> () #

Hashable BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> BoolExp -> Int

hash :: BoolExp -> Int

Cacheable BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: BoolExp -> Builder Source #

type Rep BoolExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep BoolExp = D1 ('MetaData "BoolExp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (((C1 ('MetaCons "BELit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool)) :+: C1 ('MetaCons "BEBin" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BinOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp)))) :+: (C1 ('MetaCons "BENot" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 BoolExp)) :+: (C1 ('MetaCons "BECompare" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CompareOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp))) :+: C1 ('MetaCons "BECompareAny" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CompareOp) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp)))))) :+: ((C1 ('MetaCons "BENull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp)) :+: C1 ('MetaCons "BENotNull" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp))) :+: (C1 ('MetaCons "BEExists" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Select)) :+: (C1 ('MetaCons "BEIN" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [SQLExp])) :+: C1 ('MetaCons "BEExp" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 SQLExp))))))

data BinOp Source #

Constructors

AndOp 
OrOp 

Instances

Instances details
Eq BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: BinOp -> BinOp -> Bool #

(/=) :: BinOp -> BinOp -> Bool #

Data BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BinOp -> c BinOp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BinOp #

toConstr :: BinOp -> Constr #

dataTypeOf :: BinOp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BinOp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BinOp) #

gmapT :: (forall b. Data b => b -> b) -> BinOp -> BinOp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BinOp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BinOp -> r #

gmapQ :: (forall d. Data d => d -> u) -> BinOp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> BinOp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> BinOp -> m BinOp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BinOp -> m BinOp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BinOp -> m BinOp #

Show BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

showsPrec :: Int -> BinOp -> ShowS #

show :: BinOp -> String #

showList :: [BinOp] -> ShowS #

Generic BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep BinOp :: Type -> Type #

Methods

from :: BinOp -> Rep BinOp x #

to :: Rep BinOp x -> BinOp #

NFData BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: BinOp -> () #

Hashable BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

hashWithSalt :: Int -> BinOp -> Int

hash :: BinOp -> Int

Cacheable BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: BinOp -> Builder Source #

type Rep BinOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep BinOp = D1 ('MetaData "BinOp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "AndOp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OrOp" 'PrefixI 'False) (U1 :: Type -> Type))

data CompareOp Source #

Instances

Instances details
Eq CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CompareOp -> c CompareOp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CompareOp #

toConstr :: CompareOp -> Constr #

dataTypeOf :: CompareOp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CompareOp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CompareOp) #

gmapT :: (forall b. Data b => b -> b) -> CompareOp -> CompareOp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CompareOp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CompareOp -> r #

gmapQ :: (forall d. Data d => d -> u) -> CompareOp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CompareOp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CompareOp -> m CompareOp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CompareOp -> m CompareOp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CompareOp -> m CompareOp #

Show CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Generic CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep CompareOp :: Type -> Type #

NFData CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: CompareOp -> () #

Hashable CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: CompareOp -> Builder Source #

type Rep CompareOp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep CompareOp = D1 ('MetaData "CompareOp" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) ((((C1 ('MetaCons "SEQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SGT" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SLT" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SIN" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SNE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SGTE" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "SLTE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SNIN" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SLIKE" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SNLIKE" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SILIKE" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SNILIKE" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "SSIMILAR" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SNSIMILAR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SREGEX" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SIREGEX" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SNREGEX" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SNIREGEX" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "SContains" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SContainedIn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SHasKey" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "SHasKeysAny" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SHasKeysAll" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SMatchesFulltext" 'PrefixI 'False) (U1 :: Type -> Type))))))

data SQLDelete Source #

Instances

Instances details
Eq SQLDelete Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Show SQLDelete Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SQLDelete Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SQLDelete -> Builder Source #

data SQLUpdate Source #

Instances

Instances details
Eq SQLUpdate Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Show SQLUpdate Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SQLUpdate Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SQLUpdate -> Builder Source #

newtype SetExp Source #

Constructors

SetExp [SetExpItem] 

Instances

Instances details
Eq SetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: SetExp -> SetExp -> Bool #

(/=) :: SetExp -> SetExp -> Bool #

Show SetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SetExp -> Builder Source #

newtype SetExpItem Source #

Constructors

SetExpItem (PGCol, SQLExp) 

Instances

Instances details
Eq SetExpItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Show SetExpItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SetExpItem Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SetExpItem -> Builder Source #

newtype UsingExp Source #

Constructors

UsingExp [TableName] 

newtype RetExp Source #

Constructors

RetExp [Extractor] 

Instances

Instances details
Eq RetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: RetExp -> RetExp -> Bool #

(/=) :: RetExp -> RetExp -> Bool #

Show RetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL RetExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: RetExp -> Builder Source #

newtype ValuesExp Source #

Constructors

ValuesExp 

Fields

Instances

Instances details
Eq ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Data ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ValuesExp -> c ValuesExp #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ValuesExp #

toConstr :: ValuesExp -> Constr #

dataTypeOf :: ValuesExp -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ValuesExp) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ValuesExp) #

gmapT :: (forall b. Data b => b -> b) -> ValuesExp -> ValuesExp #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ValuesExp -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ValuesExp -> r #

gmapQ :: (forall d. Data d => d -> u) -> ValuesExp -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ValuesExp -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ValuesExp -> m ValuesExp #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ValuesExp -> m ValuesExp #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ValuesExp -> m ValuesExp #

Show ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

NFData ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: ValuesExp -> () #

Hashable ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL ValuesExp Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: ValuesExp -> Builder Source #

data SQLInsert Source #

Instances

Instances details
Eq SQLInsert Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Show SQLInsert Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL SQLInsert Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SQLInsert -> Builder Source #

data TopLevelCTE Source #

Top-level Common Table Expression statement.

A top level CTE can be a query or a mutation statement.

Postgres supports mutations only in top-level CTEs. See https://www.postgresql.org/docs/current/queries-with.html#QUERIES-WITH-MODIFYING

Instances

Instances details
Eq TopLevelCTE Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Show TopLevelCTE Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL TopLevelCTE Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: TopLevelCTE -> Builder Source #

data SelectWithG statement Source #

A SELECT statement with Common Table Expressions. https://www.postgresql.org/docs/current/queries-with.html

These CTEs are determined by the statement parameter. Currently they are either TopLevelCTE, which allow for a query or mutation statement, or Select, which only allow for querying results.

The distinction is required because Postgres only supports mutations in CTEs at the top level. See https://www.postgresql.org/docs/current/queries-with.html#QUERIES-WITH-MODIFYING

Constructors

SelectWith 

Fields

Instances

Instances details
Eq statement => Eq (SelectWithG statement) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

(==) :: SelectWithG statement -> SelectWithG statement -> Bool #

(/=) :: SelectWithG statement -> SelectWithG statement -> Bool #

Data statement => Data (SelectWithG statement) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SelectWithG statement -> c (SelectWithG statement) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (SelectWithG statement) #

toConstr :: SelectWithG statement -> Constr #

dataTypeOf :: SelectWithG statement -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (SelectWithG statement)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (SelectWithG statement)) #

gmapT :: (forall b. Data b => b -> b) -> SelectWithG statement -> SelectWithG statement #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SelectWithG statement -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SelectWithG statement -> r #

gmapQ :: (forall d. Data d => d -> u) -> SelectWithG statement -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SelectWithG statement -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SelectWithG statement -> m (SelectWithG statement) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SelectWithG statement -> m (SelectWithG statement) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SelectWithG statement -> m (SelectWithG statement) #

Show statement => Show (SelectWithG statement) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

showsPrec :: Int -> SelectWithG statement -> ShowS #

show :: SelectWithG statement -> String #

showList :: [SelectWithG statement] -> ShowS #

Generic (SelectWithG statement) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Associated Types

type Rep (SelectWithG statement) :: Type -> Type #

Methods

from :: SelectWithG statement -> Rep (SelectWithG statement) x #

to :: Rep (SelectWithG statement) x -> SelectWithG statement #

NFData v => NFData (SelectWithG v) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

rnf :: SelectWithG v -> () #

Hashable v => Hashable (SelectWithG v) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Cacheable v => Cacheable (SelectWithG v) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

ToSQL v => ToSQL (SelectWithG v) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

Methods

toSQL :: SelectWithG v -> Builder Source #

type Rep (SelectWithG statement) Source # 
Instance details

Defined in Hasura.Backends.Postgres.SQL.DML

type Rep (SelectWithG statement) = D1 ('MetaData "SelectWithG" "Hasura.Backends.Postgres.SQL.DML" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "SelectWith" 'PrefixI 'True) (S1 ('MetaSel ('Just "swCTEs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [(TableAlias, statement)]) :*: S1 ('MetaSel ('Just "swSelect") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Select)))

type SelectWith = SelectWithG TopLevelCTE Source #

A top-level select with CTEs.

(<+>) :: ToSQL a => Text -> [a] -> Builder infixr 6 Source #