jsaddle-dom-0.10.0.0: src/JSDOM/Generated/SerialOutputSignals.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.SerialOutputSignals
(newSerialOutputSignals, setDataTerminalReady, getDataTerminalReady, getDataTerminalReadyUnsafe, getDataTerminalReadyUnchecked, setRequestToSend, getRequestToSend, getRequestToSendUnsafe, getRequestToSendUnchecked, setBreak, getBreak, getBreakUnsafe, getBreakUnchecked, SerialOutputSignals(..), gTypeSerialOutputSignals)
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-serialoutputsignals SerialOutputSignals specification>
newSerialOutputSignals :: (MonadDOM m) => m SerialOutputSignals
newSerialOutputSignals = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-dataterminalready SerialOutputSignals.dataTerminalReady specification>
setDataTerminalReady :: (MonadDOM m) => SerialOutputSignals -> Bool -> m ()
setDataTerminalReady self val = liftDOM (void (self ^. jss "dataTerminalReady" (toJSVal val)))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-dataterminalready SerialOutputSignals.dataTerminalReady specification>
getDataTerminalReady :: (MonadDOM m) => SerialOutputSignals -> m (Maybe Bool)
getDataTerminalReady self = liftDOM (((self ^. js "dataTerminalReady") >>= fromJSValUnchecked))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-dataterminalready SerialOutputSignals.dataTerminalReady specification>
getDataTerminalReadyUnsafe :: (MonadDOM m, HasCallStack) => SerialOutputSignals -> m Bool
getDataTerminalReadyUnsafe self = liftDOM ((((self ^. js "dataTerminalReady") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-dataterminalready SerialOutputSignals.dataTerminalReady specification>
getDataTerminalReadyUnchecked :: (MonadDOM m) => SerialOutputSignals -> m Bool
getDataTerminalReadyUnchecked self = liftDOM (((self ^. js "dataTerminalReady") >>= valToBool))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-requesttosend SerialOutputSignals.requestToSend specification>
setRequestToSend :: (MonadDOM m) => SerialOutputSignals -> Bool -> m ()
setRequestToSend self val = liftDOM (void (self ^. jss "requestToSend" (toJSVal val)))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-requesttosend SerialOutputSignals.requestToSend specification>
getRequestToSend :: (MonadDOM m) => SerialOutputSignals -> m (Maybe Bool)
getRequestToSend self = liftDOM (((self ^. js "requestToSend") >>= fromJSValUnchecked))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-requesttosend SerialOutputSignals.requestToSend specification>
getRequestToSendUnsafe :: (MonadDOM m, HasCallStack) => SerialOutputSignals -> m Bool
getRequestToSendUnsafe self = liftDOM ((((self ^. js "requestToSend") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-requesttosend SerialOutputSignals.requestToSend specification>
getRequestToSendUnchecked :: (MonadDOM m) => SerialOutputSignals -> m Bool
getRequestToSendUnchecked self = liftDOM (((self ^. js "requestToSend") >>= valToBool))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-break SerialOutputSignals.break specification>
setBreak :: (MonadDOM m) => SerialOutputSignals -> Bool -> m ()
setBreak self val = liftDOM (void (self ^. jss "break" (toJSVal val)))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-break SerialOutputSignals.break specification>
getBreak :: (MonadDOM m) => SerialOutputSignals -> m (Maybe Bool)
getBreak self = liftDOM (((self ^. js "break") >>= fromJSValUnchecked))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-break SerialOutputSignals.break specification>
getBreakUnsafe :: (MonadDOM m, HasCallStack) => SerialOutputSignals -> m Bool
getBreakUnsafe self = liftDOM ((((self ^. js "break") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://serial.spec.whatwg.org/#dom-serialoutputsignals-break SerialOutputSignals.break specification>
getBreakUnchecked :: (MonadDOM m) => SerialOutputSignals -> m Bool
getBreakUnchecked self = liftDOM (((self ^. js "break") >>= valToBool))