equal
deleted
inserted
replaced
3332 import Isabelle.Library |
3332 import Isabelle.Library |
3333 |
3333 |
3334 |
3334 |
3335 newtype Time = Time Int |
3335 newtype Time = Time Int |
3336 |
3336 |
3337 instance Eq Time where Time ms1 == Time ms2 = ms1 == ms2 |
3337 instance Eq Time where Time a == Time b = a == b |
3338 instance Ord Time where compare (Time ms1) (Time ms2) = compare ms1 ms2 |
3338 instance Ord Time where compare (Time a) (Time b) = compare a b |
|
3339 instance Num Time where |
|
3340 fromInteger = Time . fromInteger |
|
3341 Time a + Time b = Time (a + b) |
|
3342 Time a - Time b = Time (a - b) |
|
3343 Time a * Time b = Time (a * b) |
|
3344 abs (Time a) = Time (abs a) |
|
3345 signum (Time a) = Time (signum a) |
3339 |
3346 |
3340 seconds :: Double -> Time |
3347 seconds :: Double -> Time |
3341 seconds s = Time (round (s * 1000.0)) |
3348 seconds s = Time (round (s * 1000.0)) |
3342 |
3349 |
3343 minutes :: Double -> Time |
3350 minutes :: Double -> Time |