jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SpeechGrammar.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from speech-api (webref). Do not edit.
module JSDOM.Generated.SpeechGrammar
(setSrc, getSrc, setWeight, getWeight, SpeechGrammar(..), gTypeSpeechGrammar)
where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums
-- | <https://developer.mozilla.org/docs/Web/API/SpeechGrammar/src MDN SpeechGrammar.src documentation>
setSrc :: (MonadDOM m, ToJSString val) => SpeechGrammar -> val -> m ()
setSrc self val = liftDOM (void (self ^. jss "src" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SpeechGrammar/src MDN SpeechGrammar.src documentation>
getSrc :: (MonadDOM m, FromJSString result) => SpeechGrammar -> m result
getSrc self = liftDOM (((self ^. js "src") >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/SpeechGrammar/weight MDN SpeechGrammar.weight documentation>
setWeight :: (MonadDOM m) => SpeechGrammar -> Float -> m ()
setWeight self val = liftDOM (void (self ^. jss "weight" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/SpeechGrammar/weight MDN SpeechGrammar.weight documentation>
getWeight :: (MonadDOM m) => SpeechGrammar -> m Float
getWeight self = liftDOM ((P.realToFrac <$> ((self ^. js "weight") >>= valToNumber)))