-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A representation of latitude and longitude -- @package coordinate @version 0.0.13 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 `(mod 60)`. -- --
--   >>> modSeconds 7
--   Seconds 7.0000
--   
-- --
--   >>> modSeconds 0
--   Seconds 0.0000
--   
-- --
--   >>> modSeconds (-0.0001)
--   Seconds 59.9999
--   
-- --
--   >>> modSeconds 60
--   Seconds 0.0000
--   
-- --
--   >>> modSeconds 59.99999
--   Seconds 60.0000
--   
-- --
--   >>> modSeconds 59.999
--   Seconds 59.9990
--   
modSeconds :: Double -> Seconds instance Eq Seconds instance Ord Seconds instance (Choice p, Applicative f) => AsSeconds p f Double instance AsSeconds p f Seconds instance Show Seconds 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 `(mod 60)`. -- --
--   >>> modMinutes 7
--   Minutes 7
--   
-- --
--   >>> modMinutes 0
--   Minutes 0
--   
-- --
--   >>> modMinutes 60
--   Minutes 0
--   
-- --
--   >>> modMinutes 1
--   Minutes 1
--   
-- --
--   >>> modMinutes 59
--   Minutes 59 
--   
modMinutes :: Int -> Minutes instance Eq Minutes instance Ord Minutes instance Show Minutes instance (Choice p, Applicative f) => AsMinutes p f Int instance AsMinutes p f Minutes module Data.Geo.Coordinate.DegreesLongitude data DegreesLongitude class AsDegreesLongitude p f s _DegreesLongitude :: AsDegreesLongitude p f s => Optic' p f s DegreesLongitude instance Eq DegreesLongitude instance Ord DegreesLongitude instance Show DegreesLongitude instance (Choice p, Applicative f) => AsDegreesLongitude p f Int instance AsDegreesLongitude p f DegreesLongitude module Data.Geo.Coordinate.Longitude data Longitude class AsLongitude p f s _Longitude :: AsLongitude p f s => Optic' p f s Longitude instance Eq Longitude instance Ord Longitude instance Show Longitude instance (p ~ (->), Functor f) => AsSeconds p f Longitude instance (p ~ (->), Functor f) => AsMinutes p f Longitude instance (p ~ (->), Functor f) => AsDegreesLongitude p f Longitude instance (Choice p, Applicative f) => AsLongitude p f Double instance (Profunctor p, Functor f) => AsLongitude p f (DegreesLongitude, Minutes, Seconds) instance AsLongitude p f Longitude module Data.Geo.Coordinate.DegreesLatitude data DegreesLatitude class AsDegreesLatitude p f s _DegreesLatitude :: AsDegreesLatitude p f s => Optic' p f s DegreesLatitude instance Eq DegreesLatitude instance Ord DegreesLatitude instance Show DegreesLatitude instance (Choice p, Applicative f) => AsDegreesLatitude p f Int instance AsDegreesLatitude p f DegreesLatitude module Data.Geo.Coordinate.Latitude data Latitude class AsLatitude p f s _Latitude :: AsLatitude p f s => Optic' p f s Latitude instance Eq Latitude instance Ord Latitude instance Show Latitude instance (p ~ (->), Functor f) => AsSeconds p f Latitude instance (p ~ (->), Functor f) => AsMinutes p f Latitude instance (p ~ (->), Functor f) => AsDegreesLatitude p f Latitude instance (Choice p, Applicative f) => AsLatitude p f Double instance (Profunctor p, Functor f) => AsLatitude p f (DegreesLatitude, Minutes, Seconds) instance AsLatitude p f Latitude module Data.Geo.Coordinate.Coordinate data Coordinate class AsCoordinate p f s _Coordinate :: AsCoordinate p f s => Optic' p f s Coordinate -- | Build a coordinate from a latitude and longitude. (.#.) :: Latitude -> Longitude -> Coordinate -- | Build a coordinate from a fractional latitude and fractional -- longitude. Fails if either are out of range. (<°>) :: Double -> Double -> Maybe Coordinate instance Eq Coordinate instance Ord Coordinate instance Show Coordinate instance (p ~ (->), Functor f) => AsDegreesLongitude p f Coordinate instance (p ~ (->), Functor f) => AsLongitude p f Coordinate instance (p ~ (->), Functor f) => AsDegreesLatitude p f Coordinate instance (p ~ (->), Functor f) => AsLatitude p f Coordinate instance (Choice p, Applicative f) => AsCoordinate p f (Double, (DegreesLongitude, Minutes, Seconds)) instance (Choice p, Applicative f) => AsCoordinate p f ((DegreesLatitude, Minutes, Seconds), Double) instance (Choice p, Applicative f) => AsCoordinate p f (Double, Longitude) instance (Choice p, Applicative f) => AsCoordinate p f (Latitude, Double) instance (Choice p, Applicative f) => AsCoordinate p f (Double, Double) instance (Profunctor p, Functor f) => AsCoordinate p f ((DegreesLongitude, Minutes, Seconds), (DegreesLatitude, Minutes, Seconds)) instance (Profunctor p, Functor f) => AsCoordinate p f ((DegreesLatitude, Minutes, Seconds), (DegreesLongitude, Minutes, Seconds)) instance (Profunctor p, Functor f) => AsCoordinate p f ((DegreesLongitude, Minutes, Seconds), Latitude) instance (Profunctor p, Functor f) => AsCoordinate p f (Latitude, (DegreesLongitude, Minutes, Seconds)) instance (Profunctor p, Functor f) => AsCoordinate p f (Longitude, (DegreesLatitude, Minutes, Seconds)) instance (Profunctor p, Functor f) => AsCoordinate p f ((DegreesLatitude, Minutes, Seconds), Longitude) instance (Profunctor p, Functor f) => AsCoordinate p f (Longitude, Latitude) instance (Profunctor p, Functor f) => AsCoordinate p f (Latitude, Longitude) instance AsCoordinate p f Coordinate module Data.Geo.Coordinate