module Opaleye.Internal.HaskellDB.Sql.Generate (SqlGenerator(..)) where
import Opaleye.Internal.HaskellDB.PrimQuery
import Opaleye.Internal.HaskellDB.Sql
import qualified Data.List.NonEmpty as NEL
data SqlGenerator = SqlGenerator
{
sqlUpdate :: SqlTable -> [PrimExpr] -> Assoc -> SqlUpdate,
sqlDelete :: SqlTable -> [PrimExpr] -> SqlDelete,
sqlInsert :: SqlTable -> [Attribute] -> NEL.NonEmpty [PrimExpr] -> SqlInsert,
sqlExpr :: PrimExpr -> SqlExpr,
sqlLiteral :: Literal -> String,
sqlQuote :: String -> String
}