hodatime-1.1.0.0: src/Data/HodaTime/Internal.hs
module Data.HodaTime.Internal
(
secondsFromSeconds
,secondsFromMinutes
,secondsFromHours
,clamp
)
where
import Data.HodaTime.Constants (secondsPerHour, secondsPerMinute)
-- conversion
secondsFromSeconds :: (Integral a, Num b) => a -> b
secondsFromSeconds = fromIntegral
{-# INLINE secondsFromSeconds #-}
secondsFromMinutes :: (Integral a, Num b) => a -> b
secondsFromMinutes = fromIntegral . (*secondsPerMinute)
{-# INLINE secondsFromMinutes #-}
secondsFromHours :: (Integral a, Num b) => a -> b
secondsFromHours = fromIntegral . (*secondsPerHour)
{-# INLINE secondsFromHours #-}
-- utility
clamp :: Ord a => a -> a -> a -> a
clamp small big = min big . max small
{-# INLINE clamp #-}