-- 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