module DaysDick
(
Days
, HasDays(..)
, toDick
) where
import System.SysInfo
type Days = Int
class HasDays a where
days :: a -> Days
instance HasDays SysInfo where
days :: SysInfo -> Days
days = (Days -> Days -> Days
forall a. Integral a => a -> a -> a
`div` (Days
60Days -> Days -> Days
forall a. Num a => a -> a -> a
*Days
60Days -> Days -> Days
forall a. Num a => a -> a -> a
*Days
24)) (Days -> Days) -> (SysInfo -> Days) -> SysInfo -> Days
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CLong -> Days
forall a b. (Integral a, Num b) => a -> b
fromIntegral (CLong -> Days) -> (SysInfo -> CLong) -> SysInfo -> Days
forall b c a. (b -> c) -> (a -> b) -> a -> c
. SysInfo -> CLong
uptime
toDick :: HasDays days => days -> String
toDick :: forall days. HasDays days => days -> String
toDick days
x = String
"8" String -> String -> String
forall a. [a] -> [a] -> [a]
++ Days -> Char -> String
forall a. Days -> a -> [a]
replicate (days -> Days
forall a. HasDays a => a -> Days
days days
x) Char
'=' String -> String -> String
forall a. [a] -> [a] -> [a]
++ String
"D"