-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A representation of latitude and longitude -- -- -- A representation of latitude and longitude @package coordinate @version 0.0.20 module Data.Geo.Coordinate.Seconds data Seconds class AsSeconds p f s _Seconds :: AsSeconds p f s => Optic' p f s Seconds -- | Setting a value >= 60 will get that value -- (rem 60). -- --
--   >>> remSeconds 7
--   Seconds 7.0000
--   
-- --
--   >>> remSeconds 0
--   Seconds 0.0000
--   
-- --
--   >>> remSeconds (-0.0001)
--   Seconds 59.9999
--   
-- --
--   >>> remSeconds 60
--   Seconds 0.0000
--   
-- --
--   >>> remSeconds 59.99999
--   Seconds 60.0000
--   
-- --
--   >>> remSeconds 59.999
--   Seconds 59.9990
--   
remSeconds :: Double -> Seconds instance GHC.Classes.Ord Data.Geo.Coordinate.Seconds.Seconds instance GHC.Classes.Eq Data.Geo.Coordinate.Seconds.Seconds instance GHC.Show.Show Data.Geo.Coordinate.Seconds.Seconds instance Data.Geo.Coordinate.Seconds.AsSeconds p f Data.Geo.Coordinate.Seconds.Seconds instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Seconds.AsSeconds p f GHC.Types.Double module Data.Geo.Coordinate.Minutes data Minutes class AsMinutes p f s _Minutes :: AsMinutes p f s => Optic' p f s Minutes -- | Setting a value >= 60 will get that value (rem -- 60). -- --
--   >>> remMinutes 7
--   Minutes 7
--   
-- --
--   >>> remMinutes 0
--   Minutes 0
--   
-- --
--   >>> remMinutes 60
--   Minutes 0
--   
-- --
--   >>> remMinutes 1
--   Minutes 1
--   
-- --
--   >>> remMinutes 59
--   Minutes 59 
--   
remMinutes :: Int -> Minutes instance GHC.Show.Show Data.Geo.Coordinate.Minutes.Minutes instance GHC.Classes.Ord Data.Geo.Coordinate.Minutes.Minutes instance GHC.Classes.Eq Data.Geo.Coordinate.Minutes.Minutes instance Data.Geo.Coordinate.Minutes.AsMinutes p f Data.Geo.Coordinate.Minutes.Minutes instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Minutes.AsMinutes p f GHC.Types.Int module Data.Geo.Coordinate.DegreesLongitude data DegreesLongitude class AsDegreesLongitude p f s _DegreesLongitude :: AsDegreesLongitude p f s => Optic' p f s DegreesLongitude -- | Setting a value >= 180 will get that value -- (rem 180). -- --
--   >>> modDegreesLongitude 7
--   DegreesLongitude 7
--   
-- --
--   >>> modDegreesLongitude 0
--   DegreesLongitude 0
--   
-- --
--   >>> modDegreesLongitude 180
--   DegreesLongitude 180
--   
-- --
--   >>> modDegreesLongitude (-180)
--   DegreesLongitude (-180)
--   
-- --
--   >>> modDegreesLongitude 1
--   DegreesLongitude 1
--   
-- --
--   >>> modDegreesLongitude 179
--   DegreesLongitude 179 
--   
-- --
--   >>> modDegreesLongitude 181
--   DegreesLongitude (-179)
--   
-- --
--   >>> modDegreesLongitude (-181)
--   DegreesLongitude 179
--   
-- --
--   >>> modDegreesLongitude 600
--   DegreesLongitude (-120)
--   
-- --
--   >>> modDegreesLongitude (-600)
--   DegreesLongitude 120
--   
modDegreesLongitude :: Int -> DegreesLongitude instance GHC.Show.Show Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude instance GHC.Classes.Ord Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude instance GHC.Classes.Eq Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude instance Data.Geo.Coordinate.DegreesLongitude.AsDegreesLongitude p f Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.DegreesLongitude.AsDegreesLongitude p f GHC.Types.Int module Data.Geo.Coordinate.Longitude data Longitude class AsLongitude p f s _Longitude :: AsLongitude p f s => Optic' p f s Longitude instance GHC.Show.Show Data.Geo.Coordinate.Longitude.Longitude instance GHC.Classes.Ord Data.Geo.Coordinate.Longitude.Longitude instance GHC.Classes.Eq Data.Geo.Coordinate.Longitude.Longitude instance Data.Geo.Coordinate.Longitude.AsLongitude p f Data.Geo.Coordinate.Longitude.Longitude instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Longitude.AsLongitude p f (Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Longitude.AsLongitude p f GHC.Types.Double instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.DegreesLongitude.AsDegreesLongitude p f Data.Geo.Coordinate.Longitude.Longitude instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Minutes.AsMinutes p f Data.Geo.Coordinate.Longitude.Longitude instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Seconds.AsSeconds p f Data.Geo.Coordinate.Longitude.Longitude module Data.Geo.Coordinate.DegreesLatitude data DegreesLatitude class AsDegreesLatitude p f s _DegreesLatitude :: AsDegreesLatitude p f s => Optic' p f s DegreesLatitude -- | Setting a value >= 90 will get that value -- (rem 90). -- --
--   >>> modDegreesLatitude 7
--   DegreesLatitude 7
--   
-- --
--   >>> modDegreesLatitude 0
--   DegreesLatitude 0
--   
-- --
--   >>> modDegreesLatitude 90
--   DegreesLatitude 90
--   
-- --
--   >>> modDegreesLatitude (-90)
--   DegreesLatitude (-90)
--   
-- --
--   >>> modDegreesLatitude 1
--   DegreesLatitude 1
--   
-- --
--   >>> modDegreesLatitude 89
--   DegreesLatitude 89 
--   
-- --
--   >>> modDegreesLatitude 91
--   DegreesLatitude (-89)
--   
-- --
--   >>> modDegreesLatitude (-91)
--   DegreesLatitude 89
--   
-- --
--   >>> modDegreesLatitude 300
--   DegreesLatitude (-60)
--   
-- --
--   >>> modDegreesLatitude (-300)
--   DegreesLatitude 60
--   
modDegreesLatitude :: Int -> DegreesLatitude instance GHC.Show.Show Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude instance GHC.Classes.Ord Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude instance GHC.Classes.Eq Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude instance Data.Geo.Coordinate.DegreesLatitude.AsDegreesLatitude p f Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.DegreesLatitude.AsDegreesLatitude p f GHC.Types.Int module Data.Geo.Coordinate.Latitude data Latitude class AsLatitude p f s _Latitude :: AsLatitude p f s => Optic' p f s Latitude instance GHC.Show.Show Data.Geo.Coordinate.Latitude.Latitude instance GHC.Classes.Ord Data.Geo.Coordinate.Latitude.Latitude instance GHC.Classes.Eq Data.Geo.Coordinate.Latitude.Latitude instance Data.Geo.Coordinate.Latitude.AsLatitude p f Data.Geo.Coordinate.Latitude.Latitude instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Latitude.AsLatitude p f (Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Latitude.AsLatitude p f GHC.Types.Double instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.DegreesLatitude.AsDegreesLatitude p f Data.Geo.Coordinate.Latitude.Latitude instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Minutes.AsMinutes p f Data.Geo.Coordinate.Latitude.Latitude instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Seconds.AsSeconds p f Data.Geo.Coordinate.Latitude.Latitude module Data.Geo.Coordinate.Coordinate data Coordinate class AsCoordinate p f s _Coordinate :: AsCoordinate p f s => Optic' p f s Coordinate latitudeMinutes :: (AsCoordinate (->) f coord, Functor f) => Optic' (->) f coord Minutes latitudeSeconds :: (AsCoordinate (->) f coord, Functor f) => Optic' (->) f coord Seconds longitudeMinutes :: (AsCoordinate (->) f coord, Functor f) => Optic' (->) f coord Minutes longitudeSeconds :: (AsCoordinate (->) f coord, Functor f) => Optic' (->) f coord Seconds -- | Build a coordinate from a latitude and longitude. (.#.) :: (AsLatitude (->) (Const Latitude) lat, AsLongitude (->) (Const Longitude) lon) => lat -> lon -> Coordinate -- | Build a coordinate from a fractional latitude and fractional -- longitude. Fails if either are out of range. (<°>) :: Double -> Double -> Maybe Coordinate instance GHC.Show.Show Data.Geo.Coordinate.Coordinate.Coordinate instance GHC.Classes.Ord Data.Geo.Coordinate.Coordinate.Coordinate instance GHC.Classes.Eq Data.Geo.Coordinate.Coordinate.Coordinate instance Data.Geo.Coordinate.Coordinate.AsCoordinate p f Data.Geo.Coordinate.Coordinate.Coordinate instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (Data.Geo.Coordinate.Latitude.Latitude, Data.Geo.Coordinate.Longitude.Longitude) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (Data.Geo.Coordinate.Longitude.Longitude, Data.Geo.Coordinate.Latitude.Latitude) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f ((Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds), Data.Geo.Coordinate.Longitude.Longitude) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (Data.Geo.Coordinate.Longitude.Longitude, (Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds)) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (Data.Geo.Coordinate.Latitude.Latitude, (Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds)) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f ((Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds), Data.Geo.Coordinate.Latitude.Latitude) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f ((Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds), (Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds)) instance (Data.Profunctor.Unsafe.Profunctor p, GHC.Base.Functor f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f ((Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds), (Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds)) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (GHC.Types.Double, GHC.Types.Double) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (Data.Geo.Coordinate.Latitude.Latitude, GHC.Types.Double) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (GHC.Types.Double, Data.Geo.Coordinate.Longitude.Longitude) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f ((Data.Geo.Coordinate.DegreesLatitude.DegreesLatitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds), GHC.Types.Double) instance (Data.Profunctor.Choice.Choice p, GHC.Base.Applicative f) => Data.Geo.Coordinate.Coordinate.AsCoordinate p f (GHC.Types.Double, (Data.Geo.Coordinate.DegreesLongitude.DegreesLongitude, Data.Geo.Coordinate.Minutes.Minutes, Data.Geo.Coordinate.Seconds.Seconds)) instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Latitude.AsLatitude p f Data.Geo.Coordinate.Coordinate.Coordinate instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.DegreesLatitude.AsDegreesLatitude p f Data.Geo.Coordinate.Coordinate.Coordinate instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.Longitude.AsLongitude p f Data.Geo.Coordinate.Coordinate.Coordinate instance (p ~ (->), GHC.Base.Functor f) => Data.Geo.Coordinate.DegreesLongitude.AsDegreesLongitude p f Data.Geo.Coordinate.Coordinate.Coordinate instance (p ~ (->), GHC.Base.Applicative f) => Data.Geo.Coordinate.Minutes.AsMinutes p f Data.Geo.Coordinate.Coordinate.Coordinate instance (p ~ (->), GHC.Base.Applicative f) => Data.Geo.Coordinate.Seconds.AsSeconds p f Data.Geo.Coordinate.Coordinate.Coordinate module Data.Geo.Coordinate