packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SerialInputSignals.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from serial (webref). Do not edit.
module JSDOM.Generated.SerialInputSignals
       (newSerialInputSignals, setDataCarrierDetect, getDataCarrierDetect, setClearToSend, getClearToSend, setRingIndicator, getRingIndicator, setDataSetReady, getDataSetReady, SerialInputSignals(..), gTypeSerialInputSignals)
       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://serial.spec.whatwg.org/#dictdef-serialinputsignals SerialInputSignals specification>
newSerialInputSignals :: (MonadDOM m) => Bool -> Bool -> Bool -> Bool -> m SerialInputSignals
newSerialInputSignals dataCarrierDetect clearToSend ringIndicator dataSetReady = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "dataCarrierDetect" (toJSVal dataCarrierDetect)) P.>> (o ^. jss "clearToSend" (toJSVal clearToSend)) P.>> (o ^. jss "ringIndicator" (toJSVal ringIndicator)) P.>> (o ^. jss "dataSetReady" (toJSVal dataSetReady)) P.>> P.return o)) >>= fromJSValUnchecked))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-datacarrierdetect SerialInputSignals.dataCarrierDetect specification>
setDataCarrierDetect :: (MonadDOM m) => SerialInputSignals -> Bool -> m ()
setDataCarrierDetect self val = liftDOM (void (self ^. jss "dataCarrierDetect" (toJSVal val)))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-datacarrierdetect SerialInputSignals.dataCarrierDetect specification>
getDataCarrierDetect :: (MonadDOM m) => SerialInputSignals -> m Bool
getDataCarrierDetect self = liftDOM (((self ^. js "dataCarrierDetect") >>= valToBool))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-cleartosend SerialInputSignals.clearToSend specification>
setClearToSend :: (MonadDOM m) => SerialInputSignals -> Bool -> m ()
setClearToSend self val = liftDOM (void (self ^. jss "clearToSend" (toJSVal val)))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-cleartosend SerialInputSignals.clearToSend specification>
getClearToSend :: (MonadDOM m) => SerialInputSignals -> m Bool
getClearToSend self = liftDOM (((self ^. js "clearToSend") >>= valToBool))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-ringindicator SerialInputSignals.ringIndicator specification>
setRingIndicator :: (MonadDOM m) => SerialInputSignals -> Bool -> m ()
setRingIndicator self val = liftDOM (void (self ^. jss "ringIndicator" (toJSVal val)))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-ringindicator SerialInputSignals.ringIndicator specification>
getRingIndicator :: (MonadDOM m) => SerialInputSignals -> m Bool
getRingIndicator self = liftDOM (((self ^. js "ringIndicator") >>= valToBool))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-datasetready SerialInputSignals.dataSetReady specification>
setDataSetReady :: (MonadDOM m) => SerialInputSignals -> Bool -> m ()
setDataSetReady self val = liftDOM (void (self ^. jss "dataSetReady" (toJSVal val)))

-- | <https://serial.spec.whatwg.org/#dom-serialinputsignals-datasetready SerialInputSignals.dataSetReady specification>
getDataSetReady :: (MonadDOM m) => SerialInputSignals -> m Bool
getDataSetReady self = liftDOM (((self ^. js "dataSetReady") >>= valToBool))