jsaddle-dom-0.10.0.0: src/JSDOM/Generated/OES_vertex_array_object.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from OES_vertex_array_object (webref). Do not edit.
module JSDOM.Generated.OES_vertex_array_object
(bindVertexArrayOES, createVertexArrayOES, createVertexArrayOES_, deleteVertexArrayOES, isVertexArrayOES, isVertexArrayOES_, pattern VERTEX_ARRAY_BINDING_OES, OES_vertex_array_object(..), gTypeOES_vertex_array_object)
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/OES_vertex_array_object/bindVertexArrayOES MDN OES_vertex_array_object.bindVertexArrayOES documentation>
bindVertexArrayOES :: (MonadDOM m) => OES_vertex_array_object -> Maybe WebGLVertexArrayObjectOES -> m ()
bindVertexArrayOES self arrayObject = liftDOM (void (self ^. jsf "bindVertexArrayOES" [toJSVal arrayObject]))
-- | <https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/createVertexArrayOES MDN OES_vertex_array_object.createVertexArrayOES documentation>
createVertexArrayOES :: (MonadDOM m) => OES_vertex_array_object -> m WebGLVertexArrayObjectOES
createVertexArrayOES self = liftDOM (((self ^. jsf "createVertexArrayOES" ()) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/createVertexArrayOES MDN OES_vertex_array_object.createVertexArrayOES documentation>
createVertexArrayOES_ :: (MonadDOM m) => OES_vertex_array_object -> m ()
createVertexArrayOES_ self = liftDOM (void (self ^. jsf "createVertexArrayOES" ()))
-- | <https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/deleteVertexArrayOES MDN OES_vertex_array_object.deleteVertexArrayOES documentation>
deleteVertexArrayOES :: (MonadDOM m) => OES_vertex_array_object -> Maybe WebGLVertexArrayObjectOES -> m ()
deleteVertexArrayOES self arrayObject = liftDOM (void (self ^. jsf "deleteVertexArrayOES" [toJSVal arrayObject]))
-- | <https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/isVertexArrayOES MDN OES_vertex_array_object.isVertexArrayOES documentation>
isVertexArrayOES :: (MonadDOM m) => OES_vertex_array_object -> Maybe WebGLVertexArrayObjectOES -> m Bool
isVertexArrayOES self arrayObject = liftDOM (((self ^. jsf "isVertexArrayOES" [toJSVal arrayObject]) >>= valToBool))
-- | <https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/isVertexArrayOES MDN OES_vertex_array_object.isVertexArrayOES documentation>
isVertexArrayOES_ :: (MonadDOM m) => OES_vertex_array_object -> Maybe WebGLVertexArrayObjectOES -> m ()
isVertexArrayOES_ self arrayObject = liftDOM (void (self ^. jsf "isVertexArrayOES" [toJSVal arrayObject]))
pattern VERTEX_ARRAY_BINDING_OES = 0x85B5