packages feed

coordinate 0.0.14 → 0.0.15

raw patch · 6 files changed

+52/−49 lines, 6 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Data.Geo.Coordinate.DegreesLatitude: modDegreesLatitude :: Int -> DegreesLatitude
- Data.Geo.Coordinate.DegreesLongitude: modDegreesLongitude :: Int -> DegreesLongitude
- Data.Geo.Coordinate.Minutes: modMinutes :: Int -> Minutes
- Data.Geo.Coordinate.Seconds: modSeconds :: Double -> Seconds
+ Data.Geo.Coordinate.DegreesLatitude: remDegreesLatitude :: Int -> DegreesLatitude
+ Data.Geo.Coordinate.DegreesLongitude: remDegreesLongitude :: Int -> DegreesLongitude
+ Data.Geo.Coordinate.Minutes: remMinutes :: Int -> Minutes
+ Data.Geo.Coordinate.Seconds: remSeconds :: Double -> Seconds

Files

changelog view
@@ -1,3 +1,7 @@+0.0.15++* Change mod functions to use rem.+ 0.0.14  * Add mod functions for `DegreesLatitude` and `DegreesLongitude`.
coordinate.cabal view
@@ -1,5 +1,5 @@ name:               coordinate-version:            0.0.14+version:            0.0.15 license:            BSD3 license-file:       LICENCE author:             Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>
src/Data/Geo/Coordinate/DegreesLatitude.hs view
@@ -5,7 +5,7 @@ module Data.Geo.Coordinate.DegreesLatitude(   DegreesLatitude , AsDegreesLatitude(..)-, modDegreesLatitude+, remDegreesLatitude ) where  import Control.Applicative(Applicative)@@ -13,11 +13,10 @@ import Control.Lens(Optic', Choice, prism') import Data.Bool((&&)) import Data.Eq(Eq)-import Data.Fixed(mod') import Data.Int(Int) import Data.Maybe(Maybe(Just, Nothing)) import Data.Ord(Ord((<), (>)))-import Prelude(Show)+import Prelude(Show, rem)  -- $setup -- >>> import Control.Lens((#), (^?))@@ -65,24 +64,24 @@                then Just (DegreesLatitude i)                else Nothing) --- | Setting a value `>= 90` will get that value `(`mod` 90)`.+-- | Setting a value `>= 90` will get that value `(`rem` 90)`. ----- >>> modDegreesLatitude 7+-- >>> remDegreesLatitude 7 -- DegreesLatitude 7 ----- >>> modDegreesLatitude 0+-- >>> remDegreesLatitude 0 -- DegreesLatitude 0 ----- >>> modDegreesLatitude 90+-- >>> remDegreesLatitude 90 -- DegreesLatitude 0 ----- >>> modDegreesLatitude 1+-- >>> remDegreesLatitude 1 -- DegreesLatitude 1 ----- >>> modDegreesLatitude 89+-- >>> remDegreesLatitude 89 -- DegreesLatitude 89 -modDegreesLatitude ::+remDegreesLatitude ::   Int   -> DegreesLatitude-modDegreesLatitude x =-  DegreesLatitude (x `mod'` 90)+remDegreesLatitude x =+  DegreesLatitude (x `rem` 90)
src/Data/Geo/Coordinate/DegreesLongitude.hs view
@@ -5,7 +5,7 @@ module Data.Geo.Coordinate.DegreesLongitude(   DegreesLongitude , AsDegreesLongitude(..)-, modDegreesLongitude+, remDegreesLongitude ) where  import Control.Applicative(Applicative)@@ -13,11 +13,10 @@ import Control.Lens(Optic', Choice, prism') import Data.Bool((&&)) import Data.Eq(Eq)-import Data.Fixed(mod') import Data.Int(Int) import Data.Maybe(Maybe(Just, Nothing)) import Data.Ord(Ord((<), (>)))-import Prelude(Show)+import Prelude(Show, rem)  -- $setup -- >>> import Control.Lens((#), (^?))@@ -65,24 +64,24 @@                then Just (DegreesLongitude i)                else Nothing) --- | Setting a value `>= 90` will get that value `(`mod` 180)`.+-- | Setting a value `>= 180` will get that value `(`rem` 180)`. ----- >>> modDegreesLongitude 7+-- >>> remDegreesLongitude 7 -- DegreesLongitude 7 ----- >>> modDegreesLongitude 0+-- >>> remDegreesLongitude 0 -- DegreesLongitude 0 ----- >>> modDegreesLongitude 180+-- >>> remDegreesLongitude 180 -- DegreesLongitude 0 ----- >>> modDegreesLongitude 1+-- >>> remDegreesLongitude 1 -- DegreesLongitude 1 ----- >>> modDegreesLongitude 179+-- >>> remDegreesLongitude 179 -- DegreesLongitude 179 -modDegreesLongitude ::+remDegreesLongitude ::   Int   -> DegreesLongitude-modDegreesLongitude x =-  DegreesLongitude (x `mod'` 180)+remDegreesLongitude x =+  DegreesLongitude (x `rem` 180)
src/Data/Geo/Coordinate/Minutes.hs view
@@ -5,7 +5,7 @@ module Data.Geo.Coordinate.Minutes(   Minutes , AsMinutes(..)-, modMinutes+, remMinutes ) where  import Control.Applicative(Applicative)@@ -15,9 +15,8 @@ import Data.Maybe(Maybe(Just, Nothing)) import Data.Eq(Eq) import Data.Int(Int)-import Data.Fixed(mod') import Data.Ord(Ord((>=), (<)))-import Prelude(Show)+import Prelude(Show, rem)  -- $setup -- >>> import Control.Lens((#), (^?), (^.))@@ -59,24 +58,24 @@                then Just (Minutes i)                else Nothing)        --- | Setting a value `>= 60` will get that value `(`mod` 60)`.+-- | Setting a value `>= 60` will get that value `(`rem` 60)`. ----- >>> modMinutes 7+-- >>> remMinutes 7 -- Minutes 7 ----- >>> modMinutes 0+-- >>> remMinutes 0 -- Minutes 0 ----- >>> modMinutes 60+-- >>> remMinutes 60 -- Minutes 0 ----- >>> modMinutes 1+-- >>> remMinutes 1 -- Minutes 1 ----- >>> modMinutes 59+-- >>> remMinutes 59 -- Minutes 59 -modMinutes ::+remMinutes ::   Int   -> Minutes-modMinutes x =-  Minutes (x `mod'` 60)+remMinutes x =+  Minutes (x `rem` 60)
src/Data/Geo/Coordinate/Seconds.hs view
@@ -5,7 +5,7 @@ module Data.Geo.Coordinate.Seconds(   Seconds , AsSeconds(..)-, modSeconds+, remSeconds ) where  import Control.Applicative(Applicative)@@ -13,10 +13,12 @@ import Control.Lens(prism', Optic', Choice) import Data.Bool((&&)) import Data.Eq(Eq)-import Data.Fixed(mod')+import Data.Int(Int)+import Data.Fixed(divMod') import Data.Ord(Ord((>), (>=), (<))) import Data.Maybe(Maybe(Just, Nothing)) import Data.List((++))+import Data.Tuple(snd) import Prelude(Double, Show(showsPrec), showParen, showString) import Text.Printf(printf) @@ -69,27 +71,27 @@                then Just (Seconds d)                else Nothing) --- | Setting a value `>= 60` will get that value `(`mod` 60)`.+-- | Setting a value `>= 60` will get that value `(`rem` 60)`. ----- >>> modSeconds 7+-- >>> remSeconds 7 -- Seconds 7.0000 ----- >>> modSeconds 0+-- >>> remSeconds 0 -- Seconds 0.0000 ----- >>> modSeconds (-0.0001)+-- >>> remSeconds (-0.0001) -- Seconds 59.9999 ----- >>> modSeconds 60+-- >>> remSeconds 60 -- Seconds 0.0000 ----- >>> modSeconds 59.99999+-- >>> remSeconds 59.99999 -- Seconds 60.0000 ----- >>> modSeconds 59.999+-- >>> remSeconds 59.999 -- Seconds 59.9990-modSeconds ::+remSeconds ::   Double   -> Seconds-modSeconds x =-  Seconds (x `mod'` 60)+remSeconds x =+  Seconds (snd (x `divMod'` 60.0 :: (Int, Double)))