packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from streams (webref). Do not edit.
module JSDOM.Generated.ReadableStreamDefaultReader
       (newReadableStreamDefaultReader, read, read_, releaseLock, ReadableStreamDefaultReader(..), gTypeReadableStreamDefaultReader)
       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/ReadableStreamDefaultReader/ReadableStreamDefaultReader MDN ReadableStreamDefaultReader. documentation>
newReadableStreamDefaultReader :: (MonadDOM m, IsReadableStream stream) => stream -> m ReadableStreamDefaultReader
newReadableStreamDefaultReader stream = liftDOM (((new (jsg "ReadableStreamDefaultReader") [toJSVal stream]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read MDN ReadableStreamDefaultReader.read documentation>
read :: (MonadDOM m) => ReadableStreamDefaultReader -> m ReadableStreamReadResult
read self = liftDOM (((((self ^. jsf "read" ()) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read MDN ReadableStreamDefaultReader.read documentation>
read_ :: (MonadDOM m) => ReadableStreamDefaultReader -> m ()
read_ self = liftDOM (void (((self ^. jsf "read" ()) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock MDN ReadableStreamDefaultReader.releaseLock documentation>
releaseLock :: (MonadDOM m) => ReadableStreamDefaultReader -> m ()
releaseLock self = liftDOM (void (self ^. jsf "releaseLock" ()))