packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webgpu (webref). Do not edit.
module JSDOM.Generated.GPUDevice
       (createBindGroup, createBindGroup_, createBindGroupLayout, createBindGroupLayout_, createBuffer, createBuffer_, createCommandEncoder, createCommandEncoder_, createComputePipeline, createComputePipeline_, createComputePipelineAsync, createComputePipelineAsync_, createPipelineLayout, createPipelineLayout_, createQuerySet, createQuerySet_, createRenderBundleEncoder, createRenderBundleEncoder_, createRenderPipeline, createRenderPipeline_, createRenderPipelineAsync, createRenderPipelineAsync_, createSampler, createSampler_, createShaderModule, createShaderModule_, createTexture, createTexture_, destroy, importExternalTexture, importExternalTexture_, popErrorScope, popErrorScope_, popErrorScopeUnsafe, popErrorScopeUnchecked, pushErrorScope, getFeatures, getLimits, getAdapterInfo, getQueue, getLost, uncapturederror, GPUDevice(..), gTypeGPUDevice)
       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/GPUDevice/createBindGroup MDN GPUDevice.createBindGroup documentation>
createBindGroup :: (MonadDOM m) => GPUDevice -> GPUBindGroupDescriptor -> m GPUBindGroup
createBindGroup self descriptor = liftDOM (((self ^. jsf "createBindGroup" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup MDN GPUDevice.createBindGroup documentation>
createBindGroup_ :: (MonadDOM m) => GPUDevice -> GPUBindGroupDescriptor -> m ()
createBindGroup_ self descriptor = liftDOM (void (self ^. jsf "createBindGroup" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout MDN GPUDevice.createBindGroupLayout documentation>
createBindGroupLayout :: (MonadDOM m) => GPUDevice -> GPUBindGroupLayoutDescriptor -> m GPUBindGroupLayout
createBindGroupLayout self descriptor = liftDOM (((self ^. jsf "createBindGroupLayout" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout MDN GPUDevice.createBindGroupLayout documentation>
createBindGroupLayout_ :: (MonadDOM m) => GPUDevice -> GPUBindGroupLayoutDescriptor -> m ()
createBindGroupLayout_ self descriptor = liftDOM (void (self ^. jsf "createBindGroupLayout" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createBuffer MDN GPUDevice.createBuffer documentation>
createBuffer :: (MonadDOM m) => GPUDevice -> GPUBufferDescriptor -> m GPUBuffer
createBuffer self descriptor = liftDOM (((self ^. jsf "createBuffer" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createBuffer MDN GPUDevice.createBuffer documentation>
createBuffer_ :: (MonadDOM m) => GPUDevice -> GPUBufferDescriptor -> m ()
createBuffer_ self descriptor = liftDOM (void (self ^. jsf "createBuffer" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createCommandEncoder MDN GPUDevice.createCommandEncoder documentation>
createCommandEncoder :: (MonadDOM m) => GPUDevice -> Maybe GPUCommandEncoderDescriptor -> m GPUCommandEncoder
createCommandEncoder self descriptor = liftDOM (((self ^. jsf "createCommandEncoder" [P.maybe (P.return jsUndefined) toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createCommandEncoder MDN GPUDevice.createCommandEncoder documentation>
createCommandEncoder_ :: (MonadDOM m) => GPUDevice -> Maybe GPUCommandEncoderDescriptor -> m ()
createCommandEncoder_ self descriptor = liftDOM (void (self ^. jsf "createCommandEncoder" [P.maybe (P.return jsUndefined) toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipeline MDN GPUDevice.createComputePipeline documentation>
createComputePipeline :: (MonadDOM m) => GPUDevice -> GPUComputePipelineDescriptor -> m GPUComputePipeline
createComputePipeline self descriptor = liftDOM (((self ^. jsf "createComputePipeline" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipeline MDN GPUDevice.createComputePipeline documentation>
createComputePipeline_ :: (MonadDOM m) => GPUDevice -> GPUComputePipelineDescriptor -> m ()
createComputePipeline_ self descriptor = liftDOM (void (self ^. jsf "createComputePipeline" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipelineAsync MDN GPUDevice.createComputePipelineAsync documentation>
createComputePipelineAsync :: (MonadDOM m) => GPUDevice -> GPUComputePipelineDescriptor -> m GPUComputePipeline
createComputePipelineAsync self descriptor = liftDOM (((((self ^. jsf "createComputePipelineAsync" [toJSVal descriptor]) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipelineAsync MDN GPUDevice.createComputePipelineAsync documentation>
createComputePipelineAsync_ :: (MonadDOM m) => GPUDevice -> GPUComputePipelineDescriptor -> m ()
createComputePipelineAsync_ self descriptor = liftDOM (void (((self ^. jsf "createComputePipelineAsync" [toJSVal descriptor]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createPipelineLayout MDN GPUDevice.createPipelineLayout documentation>
createPipelineLayout :: (MonadDOM m) => GPUDevice -> GPUPipelineLayoutDescriptor -> m GPUPipelineLayout
createPipelineLayout self descriptor = liftDOM (((self ^. jsf "createPipelineLayout" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createPipelineLayout MDN GPUDevice.createPipelineLayout documentation>
createPipelineLayout_ :: (MonadDOM m) => GPUDevice -> GPUPipelineLayoutDescriptor -> m ()
createPipelineLayout_ self descriptor = liftDOM (void (self ^. jsf "createPipelineLayout" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createQuerySet MDN GPUDevice.createQuerySet documentation>
createQuerySet :: (MonadDOM m) => GPUDevice -> GPUQuerySetDescriptor -> m GPUQuerySet
createQuerySet self descriptor = liftDOM (((self ^. jsf "createQuerySet" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createQuerySet MDN GPUDevice.createQuerySet documentation>
createQuerySet_ :: (MonadDOM m) => GPUDevice -> GPUQuerySetDescriptor -> m ()
createQuerySet_ self descriptor = liftDOM (void (self ^. jsf "createQuerySet" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderBundleEncoder MDN GPUDevice.createRenderBundleEncoder documentation>
createRenderBundleEncoder :: (MonadDOM m) => GPUDevice -> GPURenderBundleEncoderDescriptor -> m GPURenderBundleEncoder
createRenderBundleEncoder self descriptor = liftDOM (((self ^. jsf "createRenderBundleEncoder" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderBundleEncoder MDN GPUDevice.createRenderBundleEncoder documentation>
createRenderBundleEncoder_ :: (MonadDOM m) => GPUDevice -> GPURenderBundleEncoderDescriptor -> m ()
createRenderBundleEncoder_ self descriptor = liftDOM (void (self ^. jsf "createRenderBundleEncoder" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipeline MDN GPUDevice.createRenderPipeline documentation>
createRenderPipeline :: (MonadDOM m) => GPUDevice -> GPURenderPipelineDescriptor -> m GPURenderPipeline
createRenderPipeline self descriptor = liftDOM (((self ^. jsf "createRenderPipeline" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipeline MDN GPUDevice.createRenderPipeline documentation>
createRenderPipeline_ :: (MonadDOM m) => GPUDevice -> GPURenderPipelineDescriptor -> m ()
createRenderPipeline_ self descriptor = liftDOM (void (self ^. jsf "createRenderPipeline" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipelineAsync MDN GPUDevice.createRenderPipelineAsync documentation>
createRenderPipelineAsync :: (MonadDOM m) => GPUDevice -> GPURenderPipelineDescriptor -> m GPURenderPipeline
createRenderPipelineAsync self descriptor = liftDOM (((((self ^. jsf "createRenderPipelineAsync" [toJSVal descriptor]) >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipelineAsync MDN GPUDevice.createRenderPipelineAsync documentation>
createRenderPipelineAsync_ :: (MonadDOM m) => GPUDevice -> GPURenderPipelineDescriptor -> m ()
createRenderPipelineAsync_ self descriptor = liftDOM (void (((self ^. jsf "createRenderPipelineAsync" [toJSVal descriptor]) >>= readPromise)))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createSampler MDN GPUDevice.createSampler documentation>
createSampler :: (MonadDOM m) => GPUDevice -> Maybe GPUSamplerDescriptor -> m GPUSampler
createSampler self descriptor = liftDOM (((self ^. jsf "createSampler" [P.maybe (P.return jsUndefined) toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createSampler MDN GPUDevice.createSampler documentation>
createSampler_ :: (MonadDOM m) => GPUDevice -> Maybe GPUSamplerDescriptor -> m ()
createSampler_ self descriptor = liftDOM (void (self ^. jsf "createSampler" [P.maybe (P.return jsUndefined) toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createShaderModule MDN GPUDevice.createShaderModule documentation>
createShaderModule :: (MonadDOM m) => GPUDevice -> GPUShaderModuleDescriptor -> m GPUShaderModule
createShaderModule self descriptor = liftDOM (((self ^. jsf "createShaderModule" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createShaderModule MDN GPUDevice.createShaderModule documentation>
createShaderModule_ :: (MonadDOM m) => GPUDevice -> GPUShaderModuleDescriptor -> m ()
createShaderModule_ self descriptor = liftDOM (void (self ^. jsf "createShaderModule" [toJSVal descriptor]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createTexture MDN GPUDevice.createTexture documentation>
createTexture :: (MonadDOM m) => GPUDevice -> GPUTextureDescriptor -> m GPUTexture
createTexture self descriptor = liftDOM (((self ^. jsf "createTexture" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/createTexture MDN GPUDevice.createTexture documentation>
createTexture_ :: (MonadDOM m) => GPUDevice -> GPUTextureDescriptor -> m ()
createTexture_ self descriptor = liftDOM (void (self ^. jsf "createTexture" [toJSVal descriptor]))

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

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/importExternalTexture MDN GPUDevice.importExternalTexture documentation>
importExternalTexture :: (MonadDOM m) => GPUDevice -> GPUExternalTextureDescriptor -> m GPUExternalTexture
importExternalTexture self descriptor = liftDOM (((self ^. jsf "importExternalTexture" [toJSVal descriptor]) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/importExternalTexture MDN GPUDevice.importExternalTexture documentation>
importExternalTexture_ :: (MonadDOM m) => GPUDevice -> GPUExternalTextureDescriptor -> m ()
importExternalTexture_ self descriptor = liftDOM (void (self ^. jsf "importExternalTexture" [toJSVal descriptor]))

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

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

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/popErrorScope MDN GPUDevice.popErrorScope documentation>
popErrorScopeUnsafe :: (MonadDOM m, HasCallStack) => GPUDevice -> m GPUError
popErrorScopeUnsafe self = liftDOM ((((((self ^. jsf "popErrorScope" ()) >>= readPromise)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

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

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/pushErrorScope MDN GPUDevice.pushErrorScope documentation>
pushErrorScope :: (MonadDOM m) => GPUDevice -> GPUErrorFilter -> m ()
pushErrorScope self filter = liftDOM (void (self ^. jsf "pushErrorScope" [toJSVal filter]))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/features MDN GPUDevice.features documentation>
getFeatures :: (MonadDOM m) => GPUDevice -> m GPUSupportedFeatures
getFeatures self = liftDOM (((self ^. js "features") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/limits MDN GPUDevice.limits documentation>
getLimits :: (MonadDOM m) => GPUDevice -> m GPUSupportedLimits
getLimits self = liftDOM (((self ^. js "limits") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/adapterInfo MDN GPUDevice.adapterInfo documentation>
getAdapterInfo :: (MonadDOM m) => GPUDevice -> m GPUAdapterInfo
getAdapterInfo self = liftDOM (((self ^. js "adapterInfo") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/queue MDN GPUDevice.queue documentation>
getQueue :: (MonadDOM m) => GPUDevice -> m GPUQueue
getQueue self = liftDOM (((self ^. js "queue") >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/GPUDevice/lost MDN GPUDevice.lost documentation>
getLost :: (MonadDOM m) => GPUDevice -> m GPUDeviceLostInfo
getLost self = liftDOM (((((self ^. js "lost") >>= readPromise)) >>= fromJSValUnchecked))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpudevice-onuncapturederror uncapturederror event>
uncapturederror :: EventName GPUDevice GPUUncapturedErrorEvent
uncapturederror = unsafeEventName (toJSString "uncapturederror")