sqel-0.0.1.0: Guided derivation for Hasql statements
Safe HaskellSafe-Inferred
LanguageHaskell2010

Sqel.Ext

Documentation

module Sqel.Names

class SetIndexPrefix prefix s0 s1 | prefix s0 -> s1 where Source #

Methods

setIndexPrefix :: Dd s0 -> Dd s1 Source #

Instances

Instances details
IndexName ('SelPrefix prefix) tpe iname => SetIndexPrefix prefix ('DdK sel mods a ('Comp tsel 'Sum i ('DdK ('SelIndex oldPrefix tpe) (NoMods :: [Type]) Int64 'Prim ': cons))) ('DdK sel mods a ('Comp tsel 'Sum i (IndexColumnWith ('SelPrefix prefix) tpe ': cons))) Source # 
Instance details

Defined in Sqel.Sum

Methods

setIndexPrefix :: Dd ('DdK sel mods a ('Comp tsel 'Sum i ('DdK ('SelIndex oldPrefix tpe) NoMods Int64 'Prim ': cons))) -> Dd ('DdK sel mods a ('Comp tsel 'Sum i (IndexColumnWith ('SelPrefix prefix) tpe ': cons))) Source #

class DdType s ~ a => Con1AsColumn name a arg s | name a arg -> s where Source #

Methods

con1As :: arg -> Dd s Source #

Instances

Instances details
(a ~ ConCol _name record _fields as, TypeName 'DefaultPrefix name tname, fields ~ Con1Fields (RenameCon1 name a), meta ~ MetaFor "constructor" ('Text name) "con1As", CompColumn meta fields a arg s) => Con1AsColumn (name :: Symbol) a arg ('DdK 'SelAuto (NoMods :: [Type]) a ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Merge s)) Source # 
Instance details

Defined in Sqel.Sum

Methods

con1As :: arg -> Dd ('DdK 'SelAuto NoMods a ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Merge s)) Source #

class DdType s ~ a => Con1Column a arg s | a arg -> s where Source #

Methods

con1 :: arg -> Dd s Source #

Instances

Instances details
(a ~ ConCol name record fields as, TypeName 'DefaultPrefix name tname, meta ~ MetaFor "constructor" ('Text name) "con1", CompColumn meta (Con1Fields a) a arg s) => Con1Column a arg ('DdK 'SelAuto (NoMods :: [Type]) (ConCol name record fields as) ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Merge s)) Source # 
Instance details

Defined in Sqel.Sum

Methods

con1 :: arg -> Dd ('DdK 'SelAuto NoMods (ConCol name record fields as) ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Merge s)) Source #

class DdType s ~ a => ConColumn a arg s | a arg -> s where Source #

Methods

con :: arg -> Dd s Source #

Instances

Instances details
(a ~ ConCol name record fields as, MkTSel ('TSel 'DefaultPrefix name), meta ~ MetaFor "constructor" ('Text name) "con", CompColumn meta fields a arg s) => ConColumn a arg ('DdK 'SelAuto (NoMods :: [Type]) (ConCol name record fields as) ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Nest s)) Source # 
Instance details

Defined in Sqel.Sum

Methods

con :: arg -> Dd ('DdK 'SelAuto NoMods (ConCol name record fields as) ('Comp ('TSel 'DefaultPrefix name) ('Prod ('Con as)) 'Nest s)) Source #

class DdType s ~ a => Sum a arg s | a arg -> s where Source #

Methods

sum :: arg -> Dd s Source #

Instances

Instances details
(b ~ a, CompName a ('TSel prefix name), IndexName 'DefaultPrefix name iname, fields ~ SumFields (GDatatypeInfoOf a) (GCode a), meta ~ MetaFor "sum type" ('ShowType a) "sum", CompColumn meta fields a arg s) => Sum b arg ('DdK 'SelAuto (NoMods :: [Type]) a ('Comp ('TSel prefix name) 'Sum 'Nest (IndexColumn name ': s))) Source # 
Instance details

Defined in Sqel.Sum

Methods

sum :: arg -> Dd ('DdK 'SelAuto NoMods a ('Comp ('TSel prefix name) 'Sum 'Nest (IndexColumn name ': s))) Source #

class DdType s ~ a => SumWith a isel imods arg s | a isel imods arg -> s where Source #

Methods

sumWith :: Dd ('DdK isel imods Int64 'Prim) -> arg -> Dd s Source #

Instances

Instances details
(b ~ a, CompName a ('TSel prefix name), fields ~ SumFields (GDatatypeInfoOf a) (GCode a), meta ~ MetaFor "sum type" ('ShowType a) "sum", CompColumn meta fields a arg s) => SumWith b isel imods arg ('DdK 'SelAuto (NoMods :: [Type]) a ('Comp ('TSel prefix name) 'Sum 'Nest ('DdK isel imods Int64 'Prim ': s))) Source # 
Instance details

Defined in Sqel.Sum

Methods

sumWith :: Dd ('DdK isel imods Int64 'Prim) -> arg -> Dd ('DdK 'SelAuto NoMods a ('Comp ('TSel prefix name) 'Sum 'Nest ('DdK isel imods Int64 'Prim ': s))) Source #

class (DdType si ~ i, DdType sa ~ a) => UidColumn i a si sa s | i a si sa -> s where Source #

Methods

uidColumn :: Dd si -> Dd sa -> Dd s Source #

Instances

Instances details
(DdType si ~ i, DdType sa ~ a, DdTypeSel sa ~ sel, ProductSel sel (Uid i a) (Dd si :> Dd (Merge sa)) s) => UidColumn i a si sa s Source # 
Instance details

Defined in Sqel.Uid

Methods

uidColumn :: Dd si -> Dd sa -> Dd s Source #

class Column a fieldName s0 s | a fieldName s0 -> s Source #

Minimal complete definition

compItem

Instances

Instances details
a ~ b => Column a fname ('DdK ('SelSymbol name) mods b ('Comp tsel c 'Nest s)) ('DdK ('SelSymbol name) mods a ('Comp tsel c 'Nest s)) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK ('SelSymbol name) mods b ('Comp tsel c 'Nest s)) -> Dd ('DdK ('SelSymbol name) mods a ('Comp tsel c 'Nest s)) Source #

a ~ b => Column a fname ('DdK ('SelSymbol name) mods b 'Prim) ('DdK ('SelSymbol name) mods a 'Prim) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK ('SelSymbol name) mods b 'Prim) -> Dd ('DdK ('SelSymbol name) mods a 'Prim) Source #

a ~ b => Column a name ('DdK 'SelAuto mods b ('Comp tsel c 'Merge s)) ('DdK 'SelAuto mods a ('Comp tsel c 'Merge s)) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK 'SelAuto mods b ('Comp tsel c 'Merge s)) -> Dd ('DdK 'SelAuto mods a ('Comp tsel c 'Merge s)) Source #

(a ~ b, KnownSymbol name) => Column a name ('DdK 'SelAuto mods b ('Comp tsel c 'Nest s)) ('DdK ('SelSymbol name) mods a ('Comp tsel c 'Nest s)) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK 'SelAuto mods b ('Comp tsel c 'Nest s)) -> Dd ('DdK ('SelSymbol name) mods a ('Comp tsel c 'Nest s)) Source #

(a ~ b, KnownSymbol name) => Column a name ('DdK 'SelAuto mods b 'Prim) ('DdK ('SelSymbol name) mods a 'Prim) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK 'SelAuto mods b 'Prim) -> Dd ('DdK ('SelSymbol name) mods a 'Prim) Source #

a ~ b => Column a name ('DdK 'SelUnused mods b 'Prim) ('DdK 'SelUnused mods a 'Prim) Source # 
Instance details

Defined in Sqel.Comp

Methods

compItem :: Dd ('DdK 'SelUnused mods b 'Prim) -> Dd ('DdK 'SelUnused mods a 'Prim) Source #

class CompName a sel | a -> sel where Source #

Methods

compName :: TSelW sel Source #

Instances

Instances details
(name ~ CompNameData a (GDatatypeInfoOf a), sel ~ 'TSel 'DefaultPrefix name, MkTSel sel) => CompName a sel Source # 
Instance details

Defined in Sqel.Comp

Methods

compName :: TSelW sel Source #

CompName a sel => CompName (Uid i a) sel Source # 
Instance details

Defined in Sqel.Comp

Methods

compName :: TSelW sel Source #

class MkTSel sel where Source #

Methods

mkTSel :: TSelW sel Source #

Instances

Instances details
TypeName prefix tpe name => MkTSel ('TSel prefix tpe) Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

mkTSel :: TSelW ('TSel prefix tpe) Source #

class KnownSymbol name => ReifyTSel sel name | sel -> name where Source #

Methods

reifyTSel :: TSelW sel -> Text Source #

Instances

Instances details
TypeName prefixSpec sel name => ReifyTSel ('TSel prefixSpec sel) name Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

reifyTSel :: TSelW ('TSel prefixSpec sel) -> Text Source #

class KnownSymbol name => ReifySel sel name | sel -> name where Source #

Methods

reifySel :: SelW sel -> Text Source #

Instances

Instances details
KnownSymbol name => ReifySel ('SelSymbol name) name Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

reifySel :: SelW ('SelSymbol name) -> Text Source #

IndexName prefixSpec sel name => ReifySel ('SelIndex prefixSpec sel) name Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

reifySel :: SelW ('SelIndex prefixSpec sel) -> Text Source #

class MkSel sel where Source #

Methods

mkSel :: SelW sel Source #

Instances

Instances details
MkSel 'SelAuto Source # 
Instance details

Defined in Sqel.Data.Sel

MkSel 'SelUnused Source # 
Instance details

Defined in Sqel.Data.Sel

MkSel ('SelPath p) Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

mkSel :: SelW ('SelPath p) Source #

KnownSymbol sel => MkSel ('SelSymbol sel) Source # 
Instance details

Defined in Sqel.Data.Sel

Methods

mkSel :: SelW ('SelSymbol sel) Source #

class (KnownSymbol name, KnownSymbol tpe) => TypeName prefix tpe name | prefix tpe -> name Source #

Instances

Instances details
(name ~ TypePrefixed prefixSpec tpe, KnownSymbol name, KnownSymbol tpe) => TypeName prefixSpec tpe name Source # 
Instance details

Defined in Sqel.Data.Sel

class KnownSymbol name => IndexName prefix tpe name | prefix tpe -> name Source #

Instances

Instances details
(name ~ IndexPrefixed prefixSpec tpe, KnownSymbol name) => IndexName prefixSpec tpe name Source # 
Instance details

Defined in Sqel.Data.Sel

data Ignore Source #

Constructors

Ignore 

Instances

Instances details
Generic Ignore Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep Ignore :: Type -> Type #

Methods

from :: Ignore -> Rep Ignore x #

to :: Rep Ignore x -> Ignore #

Show Ignore Source # 
Instance details

Defined in Sqel.Data.Mods

Eq Ignore Source # 
Instance details

Defined in Sqel.Data.Mods

Methods

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

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

ReifyPrimCodec Encoder (Ignore ': ps) (a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Ignore ': ps) -> Encoder a Source #

ReifyPrimCodec FullCodec (Ignore ': ps) (a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Ignore ': ps) -> FullCodec a Source #

type Rep Ignore Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep Ignore = D1 ('MetaData "Ignore" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "Ignore" 'PrefixI 'False) (U1 :: Type -> Type))

data Newtype a w Source #

Constructors

Newtype (a -> w) (w -> a) 

Instances

Instances details
ReifyPrimName w mods => ReifyPrimName (a :: Type) (Newtype a w ': mods) Source # 
Instance details

Defined in Sqel.ReifyDd

Methods

reifyPrimName :: NP I (Newtype a w ': mods) -> PgPrimName Source #

ReifyPrimCodec Value mods w => ReifyPrimCodec Value (Newtype a w ': mods) (a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Newtype a w ': mods) -> Value a Source #

(ReifyPrimCodec c mods w, Invariant c) => ReifyPrimCodec (c :: Type -> Type) (Newtype a w ': mods) (a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Newtype a w ': mods) -> c a Source #

(MkPrimNewtypes as s, err ~ NewtypeError, UnwrapNewtype err a w) => MkPrimNewtypes (a ': as :: [Type]) ('DdK 'SelAuto '[Newtype a w] a 'Prim ': s) Source # 
Instance details

Defined in Sqel.Prim

Methods

mkPrimNewtypes :: NP Dd ('DdK 'SelAuto '[Newtype a w] a 'Prim ': s) Source #

Generic (Newtype a w) Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep (Newtype a w) :: Type -> Type #

Methods

from :: Newtype a w -> Rep (Newtype a w) x #

to :: Rep (Newtype a w) x -> Newtype a w #

Show (Newtype a w) Source # 
Instance details

Defined in Sqel.Data.Mods

Methods

showsPrec :: Int -> Newtype a w -> ShowS #

show :: Newtype a w -> String #

showList :: [Newtype a w] -> ShowS #

type Rep (Newtype a w) Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep (Newtype a w) = D1 ('MetaData "Newtype" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "Newtype" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a -> w)) :*: S1 ('MetaSel ('Just "wrap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (w -> a))))

newtype SetTableName Source #

Constructors

SetTableName 

Instances

Instances details
IsString SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

Generic SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep SetTableName :: Type -> Type #

Show SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

Eq SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

Ord SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep SetTableName Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep SetTableName = D1 ('MetaData "SetTableName" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'True) (C1 ('MetaCons "SetTableName" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSetTableName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PgTableName)))

data ArrayColumn f Source #

Constructors

ArrayColumn 

Instances

Instances details
(ReifyPrimCodec ValueCodec ps a, Foldable f, ArrayDecoder f a) => ReifyPrimCodec FullCodec (ArrayColumn f ': ps) (f a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (ArrayColumn f ': ps) -> FullCodec (f a) Source #

(ReifyPrimCodec ValueCodec ps a, Foldable f, ArrayDecoder f a) => ReifyPrimCodec ValueCodec (ArrayColumn f ': ps) (f a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (ArrayColumn f ': ps) -> ValueCodec (f a) Source #

ReifyPrimName a mods => ReifyPrimName (f a :: Type) (ArrayColumn f ': mods) Source # 
Instance details

Defined in Sqel.ReifyDd

Methods

reifyPrimName :: NP I (ArrayColumn f ': mods) -> PgPrimName Source #

Generic (ArrayColumn f) Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep (ArrayColumn f) :: Type -> Type #

Methods

from :: ArrayColumn f -> Rep (ArrayColumn f) x #

to :: Rep (ArrayColumn f) x -> ArrayColumn f #

Show (ArrayColumn f) Source # 
Instance details

Defined in Sqel.Data.Mods

Eq (ArrayColumn f) Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep (ArrayColumn f) Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep (ArrayColumn f) = D1 ('MetaData "ArrayColumn" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "ArrayColumn" 'PrefixI 'False) (U1 :: Type -> Type))

data ReadShowColumn Source #

Constructors

ReadShowColumn 

Instances

Instances details
Generic ReadShowColumn Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep ReadShowColumn :: Type -> Type #

Show ReadShowColumn Source # 
Instance details

Defined in Sqel.Data.Mods

Eq ReadShowColumn Source # 
Instance details

Defined in Sqel.Data.Mods

(Show a, Read a) => ReifyPrimCodec FullCodec (ReadShowColumn ': ps) (a :: TYPE LiftedRep) Source # 
Instance details

Defined in Sqel.ReifyCodec

(Show a, Read a) => ReifyPrimCodec ValueCodec (ReadShowColumn ': ps) (a :: TYPE LiftedRep) Source # 
Instance details

Defined in Sqel.ReifyCodec

type Rep ReadShowColumn Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep ReadShowColumn = D1 ('MetaData "ReadShowColumn" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "ReadShowColumn" 'PrefixI 'False) (U1 :: Type -> Type))

data EnumColumn Source #

Constructors

EnumColumn 

Instances

Instances details
Generic EnumColumn Source # 
Instance details

Defined in Sqel.Data.Mods

Associated Types

type Rep EnumColumn :: Type -> Type #

Show EnumColumn Source # 
Instance details

Defined in Sqel.Data.Mods

Eq EnumColumn Source # 
Instance details

Defined in Sqel.Data.Mods

(Show a, EnumTable a) => ReifyPrimCodec FullCodec (EnumColumn ': ps) (a :: TYPE LiftedRep) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (EnumColumn ': ps) -> FullCodec a Source #

(Show a, EnumTable a) => ReifyPrimCodec ValueCodec (EnumColumn ': ps) (a :: TYPE LiftedRep) Source # 
Instance details

Defined in Sqel.ReifyCodec

type Rep EnumColumn Source # 
Instance details

Defined in Sqel.Data.Mods

type Rep EnumColumn = D1 ('MetaData "EnumColumn" "Sqel.Data.Mods" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "EnumColumn" 'PrefixI 'False) (U1 :: Type -> Type))

data PgDefault Source #

Constructors

PgDefault Sql 

Instances

Instances details
Show PgDefault Source # 
Instance details

Defined in Sqel.Data.Mods

ColumnConstraint PgDefault Source # 
Instance details

Defined in Sqel.ColumnConstraints

data PrimaryKey Source #

Constructors

PrimaryKey 

Instances

Instances details
Show PrimaryKey Source # 
Instance details

Defined in Sqel.Data.Mods

ColumnConstraint PrimaryKey Source # 
Instance details

Defined in Sqel.ColumnConstraints

data Unique Source #

Constructors

Unique 

Instances

Instances details
Show Unique Source # 
Instance details

Defined in Sqel.Data.Mods

ColumnConstraint Unique Source # 
Instance details

Defined in Sqel.ColumnConstraints

data Nullable Source #

Constructors

Nullable 

Instances

Instances details
Show Nullable Source # 
Instance details

Defined in Sqel.Data.Mods

ColumnConstraint Nullable Source # 
Instance details

Defined in Sqel.ColumnConstraints

ReifyPrimCodec Value ps a => ReifyPrimCodec Encoder (Nullable ': ps) (Maybe a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Nullable ': ps) -> Encoder (Maybe a) Source #

ReifyPrimCodec ValueCodec ps a => ReifyPrimCodec FullCodec (Nullable ': ps) (Maybe a :: Type) Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyPrimCodec :: NP I (Nullable ': ps) -> FullCodec (Maybe a) Source #

ReifyPrimName a mods => ReifyPrimName (Maybe a :: Type) (Nullable ': mods) Source # 
Instance details

Defined in Sqel.ReifyDd

Methods

reifyPrimName :: NP I (Nullable ': mods) -> PgPrimName Source #

type NoMods = '[] Source #

data Mods ps Source #

Instances

Instances details
All (Compose Show I) ps => Show (Mods ps) Source # 
Instance details

Defined in Sqel.Data.Mods

Methods

showsPrec :: Int -> Mods ps -> ShowS #

show :: Mods ps -> String #

showList :: [Mods ps] -> ShowS #

All Show ps => Pretty (Mods ps) Source # 
Instance details

Defined in Sqel.Data.Mods

Methods

pretty :: Mods ps -> Doc ann #

prettyList :: [Mods ps] -> Doc ann #

pattern NoMods :: () => ps ~ '[] => Mods ps Source #

class MaybeMod p ps where Source #

Methods

maybeMod :: Mods ps -> Maybe p Source #

Instances

Instances details
MaybeMod p ('[] :: [Type]) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

maybeMod :: Mods '[] -> Maybe p Source #

MaybeMod p (p ': ps) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

maybeMod :: Mods (p ': ps) -> Maybe p Source #

MaybeMod p ps => MaybeMod p (p0 ': ps) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

maybeMod :: Mods (p0 ': ps) -> Maybe p Source #

class OptMod p ps res | ps p -> res where Source #

Methods

optMod :: Mods ps -> res Source #

Instances

Instances details
OptMod p ('[] :: [Type]) () Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

optMod :: Mods '[] -> () Source #

OptMod p (p ': ps) p Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

optMod :: Mods (p ': ps) -> p Source #

OptMod p ps p1 => OptMod p (p0 ': ps) p1 Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

optMod :: Mods (p0 ': ps) -> p1 Source #

class CMapMod c p0 p p1 s0 s1 | s0 p0 p1 -> p s1 where Source #

Methods

cmapMod :: p0 -> (c p p1 => p -> p1) -> Dd s0 -> Dd s1 Source #

Instances

Instances details
CMapMod' c p0 p p1 ps0 ps1 => CMapMod c p0 p p1 ('DdK sel ps0 a s0) ('DdK sel ps1 a s0) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

cmapMod :: p0 -> (c p p1 => p -> p1) -> Dd ('DdK sel ps0 a s0) -> Dd ('DdK sel ps1 a s0) Source #

class OverMod p s where Source #

Methods

overMod :: (p -> p) -> Dd s -> Dd s Source #

Instances

Instances details
OverMod' p ps => OverMod p ('DdK sel ps a s0) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

overMod :: (p -> p) -> Dd ('DdK sel ps a s0) -> Dd ('DdK sel ps a s0) Source #

class MapMod p s0 s1 | p s0 -> s1 where Source #

Methods

mapMod :: p -> (p -> p) -> Dd s0 -> Dd s1 Source #

Instances

Instances details
MapMod' p ps0 ps1 => MapMod p ('DdK sel ps0 a s0) ('DdK sel ps1 a s0) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

mapMod :: p -> (p -> p) -> Dd ('DdK sel ps0 a s0) -> Dd ('DdK sel ps1 a s0) Source #

class AddMod p s0 s1 | p s0 -> s1 where Source #

Methods

addMod :: p -> Dd s0 -> Dd s1 Source #

Instances

Instances details
AddMod p ('DdK sel ps a s) ('DdK sel (p ': ps) a s) Source # 
Instance details

Defined in Sqel.Class.Mods

Methods

addMod :: p -> Dd ('DdK sel ps a s) -> Dd ('DdK sel (p ': ps) a s) Source #

amendMod :: MapMod p s0 s1 => p -> Dd s0 -> Dd s1 Source #

setMod :: MapMod p s0 s1 => p -> Dd s0 -> Dd s1 Source #

data SelectAtom Source #

Constructors

SelectAtom FragType (Selector -> Int -> Sql) 

Instances

Instances details
Generic SelectAtom Source # 
Instance details

Defined in Sqel.Data.SelectExpr

Associated Types

type Rep SelectAtom :: Type -> Type #

type Rep SelectAtom Source # 
Instance details

Defined in Sqel.Data.SelectExpr

type Rep SelectAtom = D1 ('MetaData "SelectAtom" "Sqel.Data.SelectExpr" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) (C1 ('MetaCons "SelectAtom" 'PrefixI 'True) (S1 ('MetaSel ('Just "type_") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FragType) :*: S1 ('MetaSel ('Just "code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Selector -> Int -> Sql))))

data FragType Source #

Instances

Instances details
Generic FragType Source # 
Instance details

Defined in Sqel.Data.FragType

Associated Types

type Rep FragType :: Type -> Type #

Methods

from :: FragType -> Rep FragType x #

to :: Rep FragType x -> FragType #

Show FragType Source # 
Instance details

Defined in Sqel.Data.FragType

Eq FragType Source # 
Instance details

Defined in Sqel.Data.FragType

Ord FragType Source # 
Instance details

Defined in Sqel.Data.FragType

type Rep FragType Source # 
Instance details

Defined in Sqel.Data.FragType

type Rep FragType = D1 ('MetaData "FragType" "Sqel.Data.FragType" "sqel-0.0.1.0-5k4czMecwS553bFrfF1Jzu" 'False) ((C1 ('MetaCons "Where" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Offset" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Limit" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Order" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Order)) :+: C1 ('MetaCons "Custom" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))))

class PrimColumn a where Source #

Minimal complete definition

pgType

Instances

Instances details
PrimColumn Int64 Source # 
Instance details

Defined in Sqel.Codec

PrimColumn ByteString Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Date Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Datetime Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Time Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Text Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Day Source # 
Instance details

Defined in Sqel.Codec

PrimColumn DiffTime Source # 
Instance details

Defined in Sqel.Codec

PrimColumn UTCTime Source # 
Instance details

Defined in Sqel.Codec

PrimColumn LocalTime Source # 
Instance details

Defined in Sqel.Codec

PrimColumn TimeOfDay Source # 
Instance details

Defined in Sqel.Codec

PrimColumn UUID Source # 
Instance details

Defined in Sqel.Codec

PrimColumn () Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Bool Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Double Source # 
Instance details

Defined in Sqel.Codec

PrimColumn Int Source # 
Instance details

Defined in Sqel.Codec

(TypeError ((("A column of type " <> QuotedType a) <> " was declared as primitive,") % ((("but there is no instance of " <> Quoted "PrimColumn") <> " for that type.") % (((("If it is a newtype, ensure that it has " <> Quoted "Generic") <> " and use ") <> Quoted "primNewtype") <> "."))) :: Constraint) => PrimColumn a Source # 
Instance details

Defined in Sqel.Codec

PrimDecoder (Path b t) => PrimColumn (Path b t) Source # 
Instance details

Defined in Sqel.Codec

PrimColumn (TimeOfDay, TimeZone) Source # 
Instance details

Defined in Sqel.Codec

class ReifyCodec b s a | s -> a Source #

Minimal complete definition

reifyCodec

Instances

Instances details
(ReifyCodecComp b sub as, ReifyCompCodec b c i ps as a) => ReifyCodec b ('DdK sel ps a ('Comp tsel c i sub)) a Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyCodec :: Dd ('DdK sel ps a ('Comp tsel c i sub)) -> b a Source #

ReifyPrimCodec b ps a => ReifyCodec b ('DdK sel ps a 'Prim) a Source # 
Instance details

Defined in Sqel.ReifyCodec

Methods

reifyCodec :: Dd ('DdK sel ps a 'Prim) -> b a Source #

class ReifyDd s Source #

Minimal complete definition

reifyDd

Instances

Instances details
(ColumnConstraints mods, MaybeMod SetTableName mods, ReifyDdComp sub) => ReifyDd ('DdK sel mods a ('Comp tsel c i sub)) Source # 
Instance details

Defined in Sqel.ReifyDd

Methods

reifyDd :: Dd ('DdK sel mods a ('Comp tsel c i sub)) -> DdTerm Source #

(ColumnConstraints mods, MaybeMod SetTableName mods, ReifyPrimName a mods, ReifySel sel name) => ReifyDd ('DdK sel mods a 'Prim) Source # 
Instance details

Defined in Sqel.ReifyDd

Methods

reifyDd :: Dd ('DdK sel mods a 'Prim) -> DdTerm Source #