opaleye-0.5.1.1: An SQL-generating DSL targeting PostgreSQL

Safe HaskellNone
LanguageHaskell2010

Opaleye.Internal.Table

Synopsis

Documentation

"pWidget" ''Widget)

widgetTable :: Table (Widget (Maybe (Column PGInt4)) (Column PGText) (Column PGText) (Column PGInt4) (Column PGFloat8)) (Widget (Column PGText) (Column PGText) (Column PGText) (Column PGInt4) (Column PGFloat8)) widgetTable = Table "widgetTable" (pWidget Widget { wid = optional "id" , color = required "color" , location = required "location" , quantity = required "quantity" , radius = required "radius" }) @

data Table writerColumns viewColumns Source #

Constructors

Table String (TableProperties writerColumns viewColumns)

Uses the default schema name ("public").

TableWithSchema String String (TableProperties writerColumns viewColumns)

Schema name ("public" by default in PostgreSQL), table name, table properties.

Instances

Functor (Table a) Source # 

Methods

fmap :: (a -> b) -> Table a a -> Table a b #

(<$) :: a -> Table a b -> Table a a #

tableIdentifier :: Table writerColumns viewColumns -> TableIdentifier Source #

tableProperties :: Table writerColumns viewColumns -> TableProperties writerColumns viewColumns Source #

data TableProperties writerColumns viewColumns Source #

Constructors

TableProperties 

Fields

Instances

Profunctor TableProperties Source # 

Methods

dimap :: (a -> b) -> (c -> d) -> TableProperties b c -> TableProperties a d

lmap :: (a -> b) -> TableProperties b c -> TableProperties a c

rmap :: (b -> c) -> TableProperties a b -> TableProperties a c

(#.) :: Coercible * c b => (b -> c) -> TableProperties a b -> TableProperties a c

(.#) :: Coercible * b a => TableProperties b c -> (a -> b) -> TableProperties a c

ProductProfunctor TableProperties Source # 

Methods

empty :: TableProperties () ()

(***!) :: TableProperties a b -> TableProperties a' b' -> TableProperties (a, a') (b, b')

Functor (TableProperties a) Source # 

Methods

fmap :: (a -> b) -> TableProperties a a -> TableProperties a b #

(<$) :: a -> TableProperties a b -> TableProperties a a #

Applicative (TableProperties a) Source # 

data View columns Source #

Constructors

View columns 

newtype Writer columns dummy Source #

Constructors

Writer (forall f. Functor f => PackMap (f PrimExpr, String) () (f columns) ()) 

Instances

Profunctor Writer Source # 

Methods

dimap :: (a -> b) -> (c -> d) -> Writer b c -> Writer a d

lmap :: (a -> b) -> Writer b c -> Writer a c

rmap :: (b -> c) -> Writer a b -> Writer a c

(#.) :: Coercible * c b => (b -> c) -> Writer a b -> Writer a c

(.#) :: Coercible * b a => Writer b c -> (a -> b) -> Writer a c

ProductProfunctor Writer Source # 

Methods

empty :: Writer () ()

(***!) :: Writer a b -> Writer a' b' -> Writer (a, a') (b, b')

Functor (Writer a) Source # 

Methods

fmap :: (a -> b) -> Writer a a -> Writer a b #

(<$) :: a -> Writer a b -> Writer a a #

Applicative (Writer a) Source # 

Methods

pure :: a -> Writer a a #

(<*>) :: Writer a (a -> b) -> Writer a a -> Writer a b #

(*>) :: Writer a a -> Writer a b -> Writer a b #

(<*) :: Writer a a -> Writer a b -> Writer a a #

queryTable :: ColumnMaker viewColumns columns -> Table writerColumns viewColumns -> Tag -> (columns, PrimQuery) Source #

runColumnMaker :: ColumnMaker tablecolumns columns -> Tag -> tablecolumns -> (columns, [(Symbol, PrimExpr)]) Source #

runWriter :: Writer columns columns' -> columns -> [(PrimExpr, String)] Source #

runWriter' :: Writer columns columns' -> NonEmpty columns -> (NonEmpty [PrimExpr], [String]) Source #

data Zip a Source #

Constructors

Zip 

Fields

Instances

Monoid (Zip a) Source # 

Methods

mempty :: Zip a #

mappend :: Zip a -> Zip a -> Zip a #

mconcat :: [Zip a] -> Zip a #