groundhog-postgresql-0.1.0: Database/Groundhog/Generic/Sql/String.hs
module Database.Groundhog.Generic.Sql.String
( module Database.Groundhog.Generic.Sql
, StringS (..)
) where
import Database.Groundhog.Core
import Database.Groundhog.Generic.Sql
import Data.Monoid
import Data.String
newtype StringS = StringS { fromStringS :: ShowS }
instance Monoid StringS where
mempty = StringS id
(StringS s1) `mappend` (StringS s2) = StringS (s1 . s2)
instance IsString StringS where
fromString s = StringS (s++)
instance StringLike StringS where
fromChar c = StringS (c:)
{-# SPECIALIZE (<>) :: RenderS StringS -> RenderS StringS -> RenderS StringS #-}
{-# SPECIALIZE renderArith :: (PersistEntity v, Constructor c, DbDescriptor db) => Proxy db -> (StringS -> StringS) -> Arith v c a -> RenderS StringS #-}
{-# SPECIALIZE renderCond :: (PersistEntity v, Constructor c, DbDescriptor db)
=> Proxy db
-> (StringS -> StringS)
-> (StringS -> StringS -> StringS)
-> (StringS -> StringS -> StringS)
-> Cond v c -> Maybe (RenderS StringS) #-}
{-# SPECIALIZE renderOrders :: (PersistEntity v, Constructor c) => (StringS -> StringS) -> [Order v c] -> StringS #-}
{-# SPECIALIZE renderUpdates :: (PersistEntity v, Constructor c, DbDescriptor db) => Proxy db -> (StringS -> StringS) -> [Update v c] -> Maybe (RenderS StringS) #-}
{-# SPECIALIZE renderFields :: (StringS -> StringS) -> [(String, DbType)] -> StringS #-}
{-# SPECIALIZE renderChain :: (StringS -> StringS) -> FieldChain -> [StringS] -> [StringS] #-}