{-# OPTIONS_GHC -Wno-orphans #-}
module LawfulConversions.Relations.LazyTextBuilderAndUtcTime where
import qualified Data.Text.Lazy.Builder
import Data.Time
import LawfulConversions.Classes
import LawfulConversions.Prelude
import LawfulConversions.Relations.LazyTextBuilderAndString ()
import LawfulConversions.Relations.StringAndUtcTime ()
instance IsSome Data.Text.Lazy.Builder.Builder UTCTime where
to :: UTCTime -> Builder
to = String -> Builder
forall a. IsString a => String -> a
fromString (String -> Builder) -> (UTCTime -> String) -> UTCTime -> Builder
forall b c a. (b -> c) -> (a -> b) -> a -> c
forall {k} (cat :: k -> k -> *) (b :: k) (c :: k) (a :: k).
Category cat =>
cat b c -> cat a b -> cat a c
. UTCTime -> String
forall a b. IsSome a b => b -> a
to
maybeFrom :: Builder -> Maybe UTCTime
maybeFrom = forall a b. IsSome a b => a -> Maybe b
maybeFrom @String (String -> Maybe UTCTime)
-> (Builder -> String) -> Builder -> Maybe UTCTime
forall b c a. (b -> c) -> (a -> b) -> a -> c
forall {k} (cat :: k -> k -> *) (b :: k) (c :: k) (a :: k).
Category cat =>
cat b c -> cat a b -> cat a c
. Builder -> String
forall a b. IsSome a b => b -> a
to