module Hasql.Connection.Config where

import Hasql.Platform.Prelude

data Config
  = Config
  { -- | Pre-rendered connection string.
    Config -> ByteString
connectionString :: ByteString,
    Config -> Bool
noPreparedStatements :: Bool
  }
  deriving stock (Config -> Config -> Bool
(Config -> Config -> Bool)
-> (Config -> Config -> Bool) -> Eq Config
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Config -> Config -> Bool
== :: Config -> Config -> Bool
$c/= :: Config -> Config -> Bool
/= :: Config -> Config -> Bool
Eq)

-- | For values that can be compiled to 'Config'.
class Constructs a where
  construct :: a -> Config