jsaddle-dom-0.10.0.0: src/JSDOM/Generated/StructuredSerializeOptions.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from html (webref). Do not edit.
module JSDOM.Generated.StructuredSerializeOptions
(newStructuredSerializeOptions, setTransfer, getTransfer, getTransferUnsafe, getTransferUnchecked, StructuredSerializeOptions(..), gTypeStructuredSerializeOptions, IsStructuredSerializeOptions, toStructuredSerializeOptions)
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://html.spec.whatwg.org/multipage/web-messaging.html#structuredserializeoptions StructuredSerializeOptions specification>
newStructuredSerializeOptions :: (MonadDOM m) => m StructuredSerializeOptions
newStructuredSerializeOptions = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))
-- | <https://html.spec.whatwg.org/multipage/web-messaging.html#dom-structuredserializeoptions-transfer StructuredSerializeOptions.transfer specification>
setTransfer :: (MonadDOM m, IsStructuredSerializeOptions self) => self -> [GObject] -> m ()
setTransfer self val = liftDOM (void ((Types.toStructuredSerializeOptions self) ^. jss "transfer" (toJSVal val)))
-- | <https://html.spec.whatwg.org/multipage/web-messaging.html#dom-structuredserializeoptions-transfer StructuredSerializeOptions.transfer specification>
getTransfer :: (MonadDOM m, IsStructuredSerializeOptions self) => self -> m (Maybe [GObject])
getTransfer self = liftDOM ((((Types.toStructuredSerializeOptions self) ^. js "transfer") >>= fromJSValUnchecked))
-- | <https://html.spec.whatwg.org/multipage/web-messaging.html#dom-structuredserializeoptions-transfer StructuredSerializeOptions.transfer specification>
getTransferUnsafe :: (MonadDOM m, IsStructuredSerializeOptions self, HasCallStack) => self -> m [GObject]
getTransferUnsafe self = liftDOM (((((Types.toStructuredSerializeOptions self) ^. js "transfer") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://html.spec.whatwg.org/multipage/web-messaging.html#dom-structuredserializeoptions-transfer StructuredSerializeOptions.transfer specification>
getTransferUnchecked :: (MonadDOM m, IsStructuredSerializeOptions self) => self -> m [GObject]
getTransferUnchecked self = liftDOM ((((Types.toStructuredSerializeOptions self) ^. js "transfer") >>= fromJSValUnchecked))