packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/CacheStorage.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from service-workers (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.CacheStorage
       (js_delete, js_has, js_keys, js_match, js_open, delete, delete_, has, has_, keys, keys_, match, match_, open, open_, CacheStorage(..), gTypeCacheStorage)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"delete\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_delete :: CacheStorage -> JSString -> IO (JSVal, Bool)
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/delete MDN CacheStorage.delete documentation>
delete :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Bool
delete self cacheName = liftDOM (((js_delete (self) (toJSString cacheName)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/delete MDN CacheStorage.delete documentation>
delete_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
delete_ self cacheName = liftDOM (void (((js_delete (self) (toJSString cacheName)) >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"has\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_has :: CacheStorage -> JSString -> IO (JSVal, Bool)
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/has MDN CacheStorage.has documentation>
has :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Bool
has self cacheName = liftDOM (((js_has (self) (toJSString cacheName)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/has MDN CacheStorage.has documentation>
has_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
has_ self cacheName = liftDOM (void (((js_has (self) (toJSString cacheName)) >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $c) => { return $1[\"keys\"]().then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_keys :: CacheStorage -> IO (JSVal, JSVal)
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/keys MDN CacheStorage.keys documentation>
keys :: (MonadDOM m, FromJSString result) => CacheStorage -> m [result]
keys self = liftDOM ((((js_keys (self)) >>= checkPromiseResult) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/keys MDN CacheStorage.keys documentation>
keys_ :: (MonadDOM m) => CacheStorage -> m ()
keys_ self = liftDOM (void (((js_keys (self)) >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $3, $c) => { return $1[\"match\"]($2, $3).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_match :: CacheStorage -> RequestInfo -> JSVal -> IO (JSVal, ResponseOrUndefined)
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/match MDN CacheStorage.match documentation>
match :: (MonadDOM m, IsRequestInfo request) => CacheStorage -> request -> Maybe MultiCacheQueryOptions -> m ResponseOrUndefined
match self request options = liftDOM ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a3' -> js_match (self) (Types.toRequestInfo request) a3') >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/match MDN CacheStorage.match documentation>
match_ :: (MonadDOM m, IsRequestInfo request) => CacheStorage -> request -> Maybe MultiCacheQueryOptions -> m ()
match_ self request options = liftDOM (void ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a3' -> js_match (self) (Types.toRequestInfo request) a3') >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"open\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_open :: CacheStorage -> JSString -> IO (JSVal, Cache)
-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/open MDN CacheStorage.open documentation>
open :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m Cache
open self cacheName = liftDOM (((js_open (self) (toJSString cacheName)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/CacheStorage/open MDN CacheStorage.open documentation>
open_ :: (MonadDOM m, ToJSString cacheName) => CacheStorage -> cacheName -> m ()
open_ self cacheName = liftDOM (void (((js_open (self) (toJSString cacheName)) >>= checkPromiseResult)))