git.iko.soy/typeable/postgresql-simple
on master help sign in
Strictness annotation tweaks
commitf72593b90a6fa65576033e6b9bca3a6a36ed3872 authorLeon P Smith <leon@melding-monads.com> dateMon 27 Oct 2014, 19:48 (12 years ago) parentb4624db
1 file changed+12−12
src/Database/PostgreSQL/Simple/Time/Implementation.hs+12−12
src/Database/PostgreSQL/Simple/Time/Implementation.hs+12−12
@@ -98,7 +98,7 @@ getDay = do
9898
9999 let !year = toNum yearStr
100100 _ <- A.char '-'
101− month <- digits "month"
101+ !month <- digits "month"
102102 _ <- A.char '-'
103103 day <- digits "day"
104104
@@ -115,7 +115,7 @@ decimal str = toNum str / 10^(B.length str)
115115
116116getTimeOfDay :: A.Parser TimeOfDay
117117getTimeOfDay = do
118− hour <- digits "hours"
118+ !hour <- digits "hours"
119119 _ <- A.char ':'
120120 minute <- digits "minutes"
121121 _ <- A.char ':'
@@ -136,9 +136,9 @@ getLocalTimestamp = getUnbounded getLocalTime
136136
137137getTimeZone :: A.Parser TimeZone
138138getTimeZone = do
139− sign <- A.satisfy (\c -> c == '+' || c == '-')
140− hours <- digits "timezone"
141− mins <- (A.char ':' *> digits "timezone minutes") <|> pure 0
139+ !sign <- A.satisfy (\c -> c == '+' || c == '-')
140+ !hours <- digits "timezone"
141+ !mins <- (A.char ':' *> digits "timezone minutes") <|> pure 0
142142 let !absset = 60 * hours + mins
143143 !offset = if sign == '+' then absset else -absset
144144 return $! minutesToTimeZone offset
@@ -147,12 +147,12 @@ type TimeZoneHMS = (Int,Int,Int)
147147
148148getTimeZoneHMS :: A.Parser TimeZoneHMS
149149getTimeZoneHMS = do
150− sign <- A.satisfy (\c -> c == '+' || c == '-')
151− hours <- digits "timezone"
152− mins <- (A.char ':' *> digits "timezone minutes") <|> pure 0
153− secs <- (A.char ':' *> digits "timezone seconds") <|> pure 0
150+ !sign <- A.satisfy (\c -> c == '+' || c == '-')
151+ !hours <- digits "timezone"
152+ !mins <- (A.char ':' *> digits "timezone minutes") <|> pure 0
153+ !secs <- (A.char ':' *> digits "timezone seconds") <|> pure 0
154154 if sign == '+'
155− then return (hours, mins, secs)
155+ then return $! (hours, mins, secs)
156156 else return $! (\ !h !m !s -> (h,m,s)) (-hours) (-mins) (-secs)
157157
158158localToUTCTimeOfDayHMS :: TimeZoneHMS -> TimeOfDay -> (Integer, TimeOfDay)
@@ -185,10 +185,10 @@ getUTCTime = do
185185 _ <- A.char ' '
186186 time <- getTimeOfDay
187187 zone <- getTimeZoneHMS
188− let (!dayDelta,!time') = localToUTCTimeOfDayHMS zone time
188+ let !(dayDelta,time') = localToUTCTimeOfDayHMS zone time
189189 let !day' = addDays dayDelta day
190190 let !time'' = timeOfDayToTime time'
191− return (UTCTime day' time'')
191+ return $! UTCTime day' time''
192192
193193getUTCTimestamp :: A.Parser UTCTimestamp
194194getUTCTimestamp = getUnbounded getUTCTime