{-# LANGUAGE PatternSynonyms #-} module Language.Javascript.JSaddle.DOM.Generated.Coordinates (getLatitude, getLongitude, getAltitude, getAccuracy, getAltitudeAccuracy, getHeading, getSpeed, Coordinates, castToCoordinates, gTypeCoordinates) where import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..)) import Data.Typeable (Typeable) import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, new, array) import Data.Int (Int64) import Data.Word (Word, Word64) import Language.Javascript.JSaddle.DOM.Types import Control.Applicative ((<$>)) import Control.Monad (void) import Control.Lens.Operators ((^.)) import Language.Javascript.JSaddle.DOM.EventTargetClosures (EventName, unsafeEventName) import Language.Javascript.JSaddle.DOM.Enums -- | getLatitude :: (MonadDOM m) => Coordinates -> m Double getLatitude self = liftDOM ((self ^. js "latitude") >>= valToNumber) -- | getLongitude :: (MonadDOM m) => Coordinates -> m Double getLongitude self = liftDOM ((self ^. js "longitude") >>= valToNumber) -- | getAltitude :: (MonadDOM m) => Coordinates -> m (Maybe Double) getAltitude self = liftDOM ((self ^. js "altitude") >>= fromJSVal) -- | getAccuracy :: (MonadDOM m) => Coordinates -> m Double getAccuracy self = liftDOM ((self ^. js "accuracy") >>= valToNumber) -- | getAltitudeAccuracy :: (MonadDOM m) => Coordinates -> m (Maybe Double) getAltitudeAccuracy self = liftDOM ((self ^. js "altitudeAccuracy") >>= fromJSVal) -- | getHeading :: (MonadDOM m) => Coordinates -> m (Maybe Double) getHeading self = liftDOM ((self ^. js "heading") >>= fromJSVal) -- | getSpeed :: (MonadDOM m) => Coordinates -> m (Maybe Double) getSpeed self = liftDOM ((self ^. js "speed") >>= fromJSVal)