Added helper functions for current time and date
This commit is contained in:
parent
e8a0d42906
commit
1ea8c6c9ee
@ -50,6 +50,14 @@ mkDate day = Date (localTimeToUTC utc (LocalTime day midnight))
|
||||
mkDateTime :: Day -> TimeOfDay -> DateTime
|
||||
mkDateTime day tod = DateTime (localTimeToUTC utc (LocalTime day tod))
|
||||
|
||||
today :: IO Date
|
||||
today = do
|
||||
t <- getZonedTime
|
||||
return (mkDate (localDay (zonedTimeToLocalTime t)))
|
||||
|
||||
now :: IO DateTime
|
||||
now = fmap DateTime getCurrentTime
|
||||
|
||||
-- | Parse a date-time string to a time type, or raise an error.
|
||||
parsedatetime :: String -> DateTime
|
||||
parsedatetime s = DateTime $
|
||||
@ -73,9 +81,6 @@ datetimeToDate (DateTime (UTCTime{utctDay=day})) = Date (UTCTime day 0)
|
||||
elapsedSeconds :: Fractional a => DateTime -> DateTime -> a
|
||||
elapsedSeconds (DateTime dt1) (DateTime dt2) = realToFrac $ diffUTCTime dt1 dt2
|
||||
|
||||
today :: IO Date
|
||||
today = getCurrentTime >>= return . Date
|
||||
|
||||
dateToUTC :: Date -> UTCTime
|
||||
dateToUTC (Date u) = u
|
||||
|
||||
@ -86,4 +91,4 @@ dateComponents = toGregorian . utctDay . dateToUTC
|
||||
dateDay date = d where (_,_,d) = dateComponents date
|
||||
|
||||
-- dateMonth :: Date -> Day
|
||||
dateMonth date = m where (_,m,_) = dateComponents date
|
||||
dateMonth date = m where (_,m,_) = dateComponents date
|
||||
|
||||
Loading…
Reference in New Issue
Block a user