on dev help sign in
semigroup
commit5b9374fa4c7a2b19bff80152ef25e5fde63cb34e authorEitan Chatav <eitan.chatav@gmail.com> dateFri 18 May 2018, 19:54 (8 years ago) parentc08a8a6
1 file changed+11−3
squeal-postgresql/src/Squeal/PostgreSQL/Expression.hs+11−3
squeal-postgresql/src/Squeal/PostgreSQL/Expression.hs+11−3
@@ -138,7 +138,7 @@ import Control.Category
138138import Control.DeepSeq
139139import Data.ByteString (ByteString)
140140import Data.Function ((&))
141−import Data.Monoid hiding (All)
141+import Data.Semigroup
142142import Data.Ratio
143143import Data.String
144144import Generics.SOP hiding (from)
@@ -338,10 +338,14 @@ instance Has field fields ty => IsLabel field
338338 parenthesized (renderExpression expr) <> "." <>
339339 fromString (symbolVal (Proxy @field))
340340
341+instance Semigroup
342+ (Expression relations grouping params (nullity ('PGvararray ty))) where
343+ (<>) = unsafeBinaryOp "||"
344+
341345instance Monoid
342346 (Expression relations grouping params (nullity ('PGvararray ty))) where
343347 mempty = array []
344− mappend = unsafeBinaryOp "||"
348+ mappend = (<>)
345349
346350-- | >>> renderExpression @_ @_ @'[_] $ greatest currentTimestamp [param @1]
347351-- "GREATEST(CURRENT_TIMESTAMP, ($1 :: timestamp with time zone))"
@@ -734,10 +738,14 @@ instance IsString
734738 '\\' -> "\\\\"
735739 c -> [c]
736740
741+instance Semigroup
742+ (Expression relations grouping params (nullity 'PGtext)) where
743+ (<>) = unsafeBinaryOp "||"
744+
737745instance Monoid
738746 (Expression relations grouping params (nullity 'PGtext)) where
739747 mempty = fromString ""
740− mappend = unsafeBinaryOp "||"
748+ mappend = (<>)
741749
742750-- | >>> renderExpression $ lower "ARRRGGG"
743751-- "lower(E'ARRRGGG')"