{-# OPTIONS_GHC -fno-warn-orphans #-} -- | -- Module : Database.Relational.PureUTF8 -- Copyright : 2013-2019 Kei Hibino -- License : BSD3 -- -- Maintainer : ex8k.hibino@gmail.com -- Stability : experimental -- Portability : unknown -- -- This module defines instances to lift from haskell UTF8 byte-sequence -- to query internal record values. -- This module is not defaultly imported to be selectable instance of byte-sequences. module Database.Relational.PureUTF8 () where import Control.Applicative (pure) import Data.ByteString (ByteString) import qualified Data.ByteString.Lazy as LB import qualified Data.Text as T import qualified Data.Text.Encoding as T import qualified Data.Text.Lazy as LT import qualified Data.Text.Lazy.Encoding as LT import qualified Database.Relational.Internal.Literal as Lit import Database.Relational.ProjectableClass (LiteralSQL (..)) -- | Constant SQL terms of 'ByteString'. instance LiteralSQL ByteString where showLiteral' = pure . Lit.stringExpr . T.unpack . T.decodeUtf8 -- | Constant SQL terms of 'LB.ByteString'. instance LiteralSQL LB.ByteString where showLiteral' = pure . Lit.stringExpr . LT.unpack . LT.decodeUtf8