From fc6cf6169868e60c189e4b243330c3717ff159f3 Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Thu, 26 May 2022 13:58:07 +0200 Subject: ... --- .../spm/server/Data/CaseInsensitive/Instances.hs | 30 --------------------- .../surtr/email/spm/server/Data/UUID/Instances.hs | 31 ---------------------- 2 files changed, 61 deletions(-) delete mode 100644 hosts/surtr/email/spm/server/Data/CaseInsensitive/Instances.hs delete mode 100644 hosts/surtr/email/spm/server/Data/UUID/Instances.hs (limited to 'hosts/surtr/email/spm/server/Data') diff --git a/hosts/surtr/email/spm/server/Data/CaseInsensitive/Instances.hs b/hosts/surtr/email/spm/server/Data/CaseInsensitive/Instances.hs deleted file mode 100644 index 1f3f7a11..00000000 --- a/hosts/surtr/email/spm/server/Data/CaseInsensitive/Instances.hs +++ /dev/null @@ -1,30 +0,0 @@ -{-# OPTIONS_GHC -fno-warn-orphans #-} -{-# LANGUAGE OverloadedStrings #-} - -module Data.CaseInsensitive.Instances () where - -import Prelude -import Database.Persist -import Database.Persist.Sql - -import Data.CaseInsensitive (CI) -import qualified Data.CaseInsensitive as CI - -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text - -import Control.Exception - - -instance PersistField (CI Text) where - toPersistValue = PersistLiteralEscaped . Text.encodeUtf8 . CI.original - fromPersistValue = \case - PersistText t -> Right $ CI.mk t - PersistLiteralEscaped bs -> case Text.decodeUtf8' bs of - Right t -> Right $ CI.mk t - Left err -> Left $ "Could not decode PersistLiteral as UTF-8: " <> Text.pack (displayException err) - o -> Left $ "Expected PersistText or PersistLiteral but got ‘" <> Text.pack (show o) <> "’" - -instance PersistFieldSql (CI Text) where - sqlType _ = SqlOther "citext" diff --git a/hosts/surtr/email/spm/server/Data/UUID/Instances.hs b/hosts/surtr/email/spm/server/Data/UUID/Instances.hs deleted file mode 100644 index b2268c96..00000000 --- a/hosts/surtr/email/spm/server/Data/UUID/Instances.hs +++ /dev/null @@ -1,31 +0,0 @@ -{-# OPTIONS_GHC -fno-warn-orphans #-} -{-# LANGUAGE OverloadedStrings #-} - -module Data.UUID.Instances () where - -import Prelude -import Database.Persist -import Database.Persist.Sql -import Data.UUID (UUID) -import qualified Data.UUID as UUID - -import qualified Data.ByteString.Char8 as CBS -import qualified Data.Text as Text - -import Web.PathPieces - - -instance PersistField UUID where - toPersistValue = PersistLiteralEscaped . CBS.pack . UUID.toString - fromPersistValue (PersistLiteralEscaped uuidB8) = - case UUID.fromString $ CBS.unpack uuidB8 of - Just uuid -> Right uuid - Nothing -> Left "Invalid UUID" - fromPersistValue v = Left $ "Expected PersistLiteral but got ‘" <> Text.pack (show v) <> "’" - -instance PersistFieldSql UUID where - sqlType _ = SqlOther "uuid" - -instance PathPiece UUID where - toPathPiece = Text.pack . UUID.toString - fromPathPiece = UUID.fromString . Text.unpack -- cgit v1.2.3