packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/GPUExtent3DDict.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.GPUExtent3DDict
       (newGPUExtent3DDict, setWidth, getWidth, setHeight, getHeight, getHeightUnsafe, getHeightUnchecked, setDepthOrArrayLayers, getDepthOrArrayLayers, getDepthOrArrayLayersUnsafe, getDepthOrArrayLayersUnchecked, GPUExtent3DDict(..), gTypeGPUExtent3DDict)
       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://gpuweb.github.io/gpuweb/#dictdef-gpuextent3ddict GPUExtent3DDict specification>
newGPUExtent3DDict :: (MonadDOM m) => Word -> m GPUExtent3DDict
newGPUExtent3DDict width = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "width" (toJSVal width)) P.>> P.return o)) >>= fromJSValUnchecked))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-width GPUExtent3DDict.width specification>
setWidth :: (MonadDOM m) => GPUExtent3DDict -> Word -> m ()
setWidth self val = liftDOM (void (self ^. jss "width" (toJSVal val)))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-width GPUExtent3DDict.width specification>
getWidth :: (MonadDOM m) => GPUExtent3DDict -> m Word
getWidth self = liftDOM ((P.round <$> ((self ^. js "width") >>= valToNumber)))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-height GPUExtent3DDict.height specification>
setHeight :: (MonadDOM m) => GPUExtent3DDict -> Word -> m ()
setHeight self val = liftDOM (void (self ^. jss "height" (toJSVal val)))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-height GPUExtent3DDict.height specification>
getHeight :: (MonadDOM m) => GPUExtent3DDict -> m (Maybe Word)
getHeight self = liftDOM (((self ^. js "height") >>= fromJSValUnchecked))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-height GPUExtent3DDict.height specification>
getHeightUnsafe :: (MonadDOM m, HasCallStack) => GPUExtent3DDict -> m Word
getHeightUnsafe self = liftDOM ((((self ^. js "height") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-height GPUExtent3DDict.height specification>
getHeightUnchecked :: (MonadDOM m) => GPUExtent3DDict -> m Word
getHeightUnchecked self = liftDOM ((P.round <$> ((self ^. js "height") >>= valToNumber)))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-depthorarraylayers GPUExtent3DDict.depthOrArrayLayers specification>
setDepthOrArrayLayers :: (MonadDOM m) => GPUExtent3DDict -> Word -> m ()
setDepthOrArrayLayers self val = liftDOM (void (self ^. jss "depthOrArrayLayers" (toJSVal val)))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-depthorarraylayers GPUExtent3DDict.depthOrArrayLayers specification>
getDepthOrArrayLayers :: (MonadDOM m) => GPUExtent3DDict -> m (Maybe Word)
getDepthOrArrayLayers self = liftDOM (((self ^. js "depthOrArrayLayers") >>= fromJSValUnchecked))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-depthorarraylayers GPUExtent3DDict.depthOrArrayLayers specification>
getDepthOrArrayLayersUnsafe :: (MonadDOM m, HasCallStack) => GPUExtent3DDict -> m Word
getDepthOrArrayLayersUnsafe self = liftDOM ((((self ^. js "depthOrArrayLayers") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://gpuweb.github.io/gpuweb/#dom-gpuextent3ddict-depthorarraylayers GPUExtent3DDict.depthOrArrayLayers specification>
getDepthOrArrayLayersUnchecked :: (MonadDOM m) => GPUExtent3DDict -> m Word
getDepthOrArrayLayersUnchecked self = liftDOM ((P.round <$> ((self ^. js "depthOrArrayLayers") >>= valToNumber)))