{-# LANGUAGE PatternSynonyms #-}
-- For HasCallStack compatibility
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.WebGLRenderingContextBase
       (activeTexture, attachShader, bindAttribLocation, bindBuffer,
        bindFramebuffer, bindRenderbuffer, bindTexture, blendColor,
        blendEquation, blendEquationSeparate, blendFunc, blendFuncSeparate,
        bufferData, bufferDataPtr, bufferSubData, checkFramebufferStatus,
        checkFramebufferStatus_, clear, clearColor, clearDepth,
        clearStencil, colorMask, compileShader, compressedTexImage2D,
        compressedTexSubImage2D, copyTexImage2D, copyTexSubImage2D,
        createBuffer, createBuffer_, createFramebuffer, createFramebuffer_,
        createProgram, createProgram_, createRenderbuffer,
        createRenderbuffer_, createShader, createShader_, createTexture,
        createTexture_, cullFace, deleteBuffer, deleteFramebuffer,
        deleteProgram, deleteRenderbuffer, deleteShader, deleteTexture,
        depthFunc, depthMask, depthRange, detachShader, disable,
        disableVertexAttribArray, drawArrays, drawElements, enable,
        enableVertexAttribArray, finish, flush, framebufferRenderbuffer,
        framebufferTexture2D, frontFace, generateMipmap, getActiveAttrib,
        getActiveAttrib_, getActiveUniform, getActiveUniform_,
        getAttachedShaders, getAttachedShaders_, getAttribLocation,
        getAttribLocation_, getBufferParameter, getBufferParameter_,
        getContextAttributes, getContextAttributes_,
        getContextAttributesUnsafe, getContextAttributesUnchecked,
        getError, getError_, getSupportedExtensions,
        getSupportedExtensions_, getExtension, getExtension_,
        getExtensionUnsafe, getExtensionUnchecked,
        getFramebufferAttachmentParameter,
        getFramebufferAttachmentParameter_, getParameter, getParameter_,
        getProgramParameter, getProgramParameter_, getProgramInfoLog,
        getProgramInfoLog_, getProgramInfoLogUnsafe,
        getProgramInfoLogUnchecked, getRenderbufferParameter,
        getRenderbufferParameter_, getShaderParameter, getShaderParameter_,
        getShaderInfoLog, getShaderInfoLog_, getShaderInfoLogUnsafe,
        getShaderInfoLogUnchecked, getShaderPrecisionFormat,
        getShaderPrecisionFormat_, getShaderSource, getShaderSource_,
        getShaderSourceUnsafe, getShaderSourceUnchecked, getTexParameter,
        getTexParameter_, getUniform, getUniform_, getUniformLocation,
        getUniformLocation_, getVertexAttrib, getVertexAttrib_,
        getVertexAttribOffset, getVertexAttribOffset_, hint, isBuffer,
        isBuffer_, isContextLost, isContextLost_, isEnabled, isEnabled_,
        isFramebuffer, isFramebuffer_, isProgram, isProgram_,
        isRenderbuffer, isRenderbuffer_, isShader, isShader_, isTexture,
        isTexture_, lineWidth, linkProgram, pixelStorei, polygonOffset,
        readPixels, releaseShaderCompiler, renderbufferStorage,
        sampleCoverage, scissor, shaderSource, stencilFunc,
        stencilFuncSeparate, stencilMask, stencilMaskSeparate, stencilOp,
        stencilOpSeparate, texParameterf, texParameteri, texImage2DView,
        texImage2D, texSubImage2DView, texSubImage2D, uniform1f, uniform2f,
        uniform3f, uniform4f, uniform1i, uniform2i, uniform3i, uniform4i,
        uniform1fv, uniform2fv, uniform3fv, uniform4fv, uniform1iv,
        uniform2iv, uniform3iv, uniform4iv, uniformMatrix2fv,
        uniformMatrix3fv, uniformMatrix4fv, useProgram, validateProgram,
        vertexAttrib1f, vertexAttrib2f, vertexAttrib3f, vertexAttrib4f,
        vertexAttrib1fv, vertexAttrib2fv, vertexAttrib3fv, vertexAttrib4fv,
        vertexAttribPointer, viewport, pattern DEPTH_BUFFER_BIT,
        pattern STENCIL_BUFFER_BIT, pattern COLOR_BUFFER_BIT,
        pattern POINTS, pattern LINES, pattern LINE_LOOP,
        pattern LINE_STRIP, pattern TRIANGLES, pattern TRIANGLE_STRIP,
        pattern TRIANGLE_FAN, pattern ZERO, pattern ONE, pattern SRC_COLOR,
        pattern ONE_MINUS_SRC_COLOR, pattern SRC_ALPHA,
        pattern ONE_MINUS_SRC_ALPHA, pattern DST_ALPHA,
        pattern ONE_MINUS_DST_ALPHA, pattern DST_COLOR,
        pattern ONE_MINUS_DST_COLOR, pattern SRC_ALPHA_SATURATE,
        pattern FUNC_ADD, pattern BLEND_EQUATION,
        pattern BLEND_EQUATION_RGB, pattern BLEND_EQUATION_ALPHA,
        pattern FUNC_SUBTRACT, pattern FUNC_REVERSE_SUBTRACT,
        pattern BLEND_DST_RGB, pattern BLEND_SRC_RGB,
        pattern BLEND_DST_ALPHA, pattern BLEND_SRC_ALPHA,
        pattern CONSTANT_COLOR, pattern ONE_MINUS_CONSTANT_COLOR,
        pattern CONSTANT_ALPHA, pattern ONE_MINUS_CONSTANT_ALPHA,
        pattern BLEND_COLOR, pattern ARRAY_BUFFER,
        pattern ELEMENT_ARRAY_BUFFER, pattern ARRAY_BUFFER_BINDING,
        pattern ELEMENT_ARRAY_BUFFER_BINDING, pattern STREAM_DRAW,
        pattern STATIC_DRAW, pattern DYNAMIC_DRAW, pattern BUFFER_SIZE,
        pattern BUFFER_USAGE, pattern CURRENT_VERTEX_ATTRIB, pattern FRONT,
        pattern BACK, pattern FRONT_AND_BACK, pattern TEXTURE_2D,
        pattern CULL_FACE, pattern BLEND, pattern DITHER,
        pattern STENCIL_TEST, pattern DEPTH_TEST, pattern SCISSOR_TEST,
        pattern POLYGON_OFFSET_FILL, pattern SAMPLE_ALPHA_TO_COVERAGE,
        pattern SAMPLE_COVERAGE, pattern NO_ERROR, pattern INVALID_ENUM,
        pattern INVALID_VALUE, pattern INVALID_OPERATION,
        pattern OUT_OF_MEMORY, pattern CW, pattern CCW, pattern LINE_WIDTH,
        pattern ALIASED_POINT_SIZE_RANGE, pattern ALIASED_LINE_WIDTH_RANGE,
        pattern CULL_FACE_MODE, pattern FRONT_FACE, pattern DEPTH_RANGE,
        pattern DEPTH_WRITEMASK, pattern DEPTH_CLEAR_VALUE,
        pattern DEPTH_FUNC, pattern STENCIL_CLEAR_VALUE,
        pattern STENCIL_FUNC, pattern STENCIL_FAIL,
        pattern STENCIL_PASS_DEPTH_FAIL, pattern STENCIL_PASS_DEPTH_PASS,
        pattern STENCIL_REF, pattern STENCIL_VALUE_MASK,
        pattern STENCIL_WRITEMASK, pattern STENCIL_BACK_FUNC,
        pattern STENCIL_BACK_FAIL, pattern STENCIL_BACK_PASS_DEPTH_FAIL,
        pattern STENCIL_BACK_PASS_DEPTH_PASS, pattern STENCIL_BACK_REF,
        pattern STENCIL_BACK_VALUE_MASK, pattern STENCIL_BACK_WRITEMASK,
        pattern VIEWPORT, pattern SCISSOR_BOX, pattern COLOR_CLEAR_VALUE,
        pattern COLOR_WRITEMASK, pattern UNPACK_ALIGNMENT,
        pattern PACK_ALIGNMENT, pattern MAX_TEXTURE_SIZE,
        pattern MAX_VIEWPORT_DIMS, pattern SUBPIXEL_BITS, pattern RED_BITS,
        pattern GREEN_BITS, pattern BLUE_BITS, pattern ALPHA_BITS,
        pattern DEPTH_BITS, pattern STENCIL_BITS,
        pattern POLYGON_OFFSET_UNITS, pattern POLYGON_OFFSET_FACTOR,
        pattern TEXTURE_BINDING_2D, pattern SAMPLE_BUFFERS,
        pattern SAMPLES, pattern SAMPLE_COVERAGE_VALUE,
        pattern SAMPLE_COVERAGE_INVERT, pattern COMPRESSED_TEXTURE_FORMATS,
        pattern DONT_CARE, pattern FASTEST, pattern NICEST,
        pattern GENERATE_MIPMAP_HINT, pattern BYTE, pattern UNSIGNED_BYTE,
        pattern SHORT, pattern UNSIGNED_SHORT, pattern INT,
        pattern UNSIGNED_INT, pattern FLOAT, pattern DEPTH_COMPONENT,
        pattern ALPHA, pattern RGB, pattern RGBA, pattern LUMINANCE,
        pattern LUMINANCE_ALPHA, pattern UNSIGNED_SHORT_4_4_4_4,
        pattern UNSIGNED_SHORT_5_5_5_1, pattern UNSIGNED_SHORT_5_6_5,
        pattern FRAGMENT_SHADER, pattern VERTEX_SHADER,
        pattern MAX_VERTEX_ATTRIBS, pattern MAX_VERTEX_UNIFORM_VECTORS,
        pattern MAX_VARYING_VECTORS,
        pattern MAX_COMBINED_TEXTURE_IMAGE_UNITS,
        pattern MAX_VERTEX_TEXTURE_IMAGE_UNITS,
        pattern MAX_TEXTURE_IMAGE_UNITS,
        pattern MAX_FRAGMENT_UNIFORM_VECTORS, pattern SHADER_TYPE,
        pattern DELETE_STATUS, pattern LINK_STATUS,
        pattern VALIDATE_STATUS, pattern ATTACHED_SHADERS,
        pattern ACTIVE_UNIFORMS, pattern ACTIVE_ATTRIBUTES,
        pattern SHADING_LANGUAGE_VERSION, pattern CURRENT_PROGRAM,
        pattern NEVER, pattern LESS, pattern EQUAL, pattern LEQUAL,
        pattern GREATER, pattern NOTEQUAL, pattern GEQUAL, pattern ALWAYS,
        pattern KEEP, pattern REPLACE, pattern INCR, pattern DECR,
        pattern INVERT, pattern INCR_WRAP, pattern DECR_WRAP,
        pattern VENDOR, pattern RENDERER, pattern VERSION, pattern NEAREST,
        pattern LINEAR, pattern NEAREST_MIPMAP_NEAREST,
        pattern LINEAR_MIPMAP_NEAREST, pattern NEAREST_MIPMAP_LINEAR,
        pattern LINEAR_MIPMAP_LINEAR, pattern TEXTURE_MAG_FILTER,
        pattern TEXTURE_MIN_FILTER, pattern TEXTURE_WRAP_S,
        pattern TEXTURE_WRAP_T, pattern TEXTURE, pattern TEXTURE_CUBE_MAP,
        pattern TEXTURE_BINDING_CUBE_MAP,
        pattern TEXTURE_CUBE_MAP_POSITIVE_X,
        pattern TEXTURE_CUBE_MAP_NEGATIVE_X,
        pattern TEXTURE_CUBE_MAP_POSITIVE_Y,
        pattern TEXTURE_CUBE_MAP_NEGATIVE_Y,
        pattern TEXTURE_CUBE_MAP_POSITIVE_Z,
        pattern TEXTURE_CUBE_MAP_NEGATIVE_Z,
        pattern MAX_CUBE_MAP_TEXTURE_SIZE, pattern TEXTURE0,
        pattern TEXTURE1, pattern TEXTURE2, pattern TEXTURE3,
        pattern TEXTURE4, pattern TEXTURE5, pattern TEXTURE6,
        pattern TEXTURE7, pattern TEXTURE8, pattern TEXTURE9,
        pattern TEXTURE10, pattern TEXTURE11, pattern TEXTURE12,
        pattern TEXTURE13, pattern TEXTURE14, pattern TEXTURE15,
        pattern TEXTURE16, pattern TEXTURE17, pattern TEXTURE18,
        pattern TEXTURE19, pattern TEXTURE20, pattern TEXTURE21,
        pattern TEXTURE22, pattern TEXTURE23, pattern TEXTURE24,
        pattern TEXTURE25, pattern TEXTURE26, pattern TEXTURE27,
        pattern TEXTURE28, pattern TEXTURE29, pattern TEXTURE30,
        pattern TEXTURE31, pattern ACTIVE_TEXTURE, pattern REPEAT,
        pattern CLAMP_TO_EDGE, pattern MIRRORED_REPEAT, pattern FLOAT_VEC2,
        pattern FLOAT_VEC3, pattern FLOAT_VEC4, pattern INT_VEC2,
        pattern INT_VEC3, pattern INT_VEC4, pattern BOOL,
        pattern BOOL_VEC2, pattern BOOL_VEC3, pattern BOOL_VEC4,
        pattern FLOAT_MAT2, pattern FLOAT_MAT3, pattern FLOAT_MAT4,
        pattern SAMPLER_2D, pattern SAMPLER_CUBE,
        pattern VERTEX_ATTRIB_ARRAY_ENABLED,
        pattern VERTEX_ATTRIB_ARRAY_SIZE,
        pattern VERTEX_ATTRIB_ARRAY_STRIDE,
        pattern VERTEX_ATTRIB_ARRAY_TYPE,
        pattern VERTEX_ATTRIB_ARRAY_NORMALIZED,
        pattern VERTEX_ATTRIB_ARRAY_POINTER,
        pattern VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
        pattern IMPLEMENTATION_COLOR_READ_TYPE,
        pattern IMPLEMENTATION_COLOR_READ_FORMAT, pattern COMPILE_STATUS,
        pattern LOW_FLOAT, pattern MEDIUM_FLOAT, pattern HIGH_FLOAT,
        pattern LOW_INT, pattern MEDIUM_INT, pattern HIGH_INT,
        pattern FRAMEBUFFER, pattern RENDERBUFFER, pattern RGBA4,
        pattern RGB5_A1, pattern RGB565, pattern DEPTH_COMPONENT16,
        pattern STENCIL_INDEX, pattern STENCIL_INDEX8,
        pattern DEPTH_STENCIL, pattern RENDERBUFFER_WIDTH,
        pattern RENDERBUFFER_HEIGHT, pattern RENDERBUFFER_INTERNAL_FORMAT,
        pattern RENDERBUFFER_RED_SIZE, pattern RENDERBUFFER_GREEN_SIZE,
        pattern RENDERBUFFER_BLUE_SIZE, pattern RENDERBUFFER_ALPHA_SIZE,
        pattern RENDERBUFFER_DEPTH_SIZE, pattern RENDERBUFFER_STENCIL_SIZE,
        pattern FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE,
        pattern FRAMEBUFFER_ATTACHMENT_OBJECT_NAME,
        pattern FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL,
        pattern FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE,
        pattern COLOR_ATTACHMENT0, pattern DEPTH_ATTACHMENT,
        pattern STENCIL_ATTACHMENT, pattern DEPTH_STENCIL_ATTACHMENT,
        pattern NONE, pattern FRAMEBUFFER_COMPLETE,
        pattern FRAMEBUFFER_INCOMPLETE_ATTACHMENT,
        pattern FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT,
        pattern FRAMEBUFFER_INCOMPLETE_DIMENSIONS,
        pattern FRAMEBUFFER_UNSUPPORTED, pattern FRAMEBUFFER_BINDING,
        pattern RENDERBUFFER_BINDING, pattern MAX_RENDERBUFFER_SIZE,
        pattern INVALID_FRAMEBUFFER_OPERATION, pattern UNPACK_FLIP_Y_WEBGL,
        pattern UNPACK_PREMULTIPLY_ALPHA_WEBGL, pattern CONTEXT_LOST_WEBGL,
        pattern UNPACK_COLORSPACE_CONVERSION_WEBGL,
        pattern BROWSER_DEFAULT_WEBGL, getCanvas, getDrawingBufferWidth,
        getDrawingBufferHeight, WebGLRenderingContextBase(..),
        gTypeWebGLRenderingContextBase, IsWebGLRenderingContextBase,
        toWebGLRenderingContextBase)
       where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..))
import qualified Prelude (error)
import Data.Typeable (Typeable)
import Data.Traversable (mapM)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, asyncFunction, new, array, jsUndefined, (!), (!!))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import JSDOM.Types
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Enums

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.activeTexture Mozilla WebGLRenderingContextBase.activeTexture documentation> 
activeTexture ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> m ()
activeTexture :: self -> GLenum -> m ()
activeTexture self
self GLenum
texture
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"activeTexture"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
texture]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.attachShader Mozilla WebGLRenderingContextBase.attachShader documentation> 
attachShader ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> Maybe WebGLProgram -> Maybe WebGLShader -> m ()
attachShader :: self -> Maybe WebGLProgram -> Maybe WebGLShader -> m ()
attachShader self
self Maybe WebGLProgram
program Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"attachShader"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bindAttribLocation Mozilla WebGLRenderingContextBase.bindAttribLocation documentation> 
bindAttribLocation ::
                   (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                     self -> Maybe WebGLProgram -> GLuint -> name -> m ()
bindAttribLocation :: self -> Maybe WebGLProgram -> GLenum -> name -> m ()
bindAttribLocation self
self Maybe WebGLProgram
program GLenum
index name
name
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bindAttribLocation"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bindBuffer Mozilla WebGLRenderingContextBase.bindBuffer documentation> 
bindBuffer ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLenum -> Maybe WebGLBuffer -> m ()
bindBuffer :: self -> GLenum -> Maybe WebGLBuffer -> m ()
bindBuffer self
self GLenum
target Maybe WebGLBuffer
buffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bindBuffer"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, Maybe WebGLBuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLBuffer
buffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bindFramebuffer Mozilla WebGLRenderingContextBase.bindFramebuffer documentation> 
bindFramebuffer ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> GLenum -> Maybe WebGLFramebuffer -> m ()
bindFramebuffer :: self -> GLenum -> Maybe WebGLFramebuffer -> m ()
bindFramebuffer self
self GLenum
target Maybe WebGLFramebuffer
framebuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bindFramebuffer"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, Maybe WebGLFramebuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLFramebuffer
framebuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bindRenderbuffer Mozilla WebGLRenderingContextBase.bindRenderbuffer documentation> 
bindRenderbuffer ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> GLenum -> Maybe WebGLRenderbuffer -> m ()
bindRenderbuffer :: self -> GLenum -> Maybe WebGLRenderbuffer -> m ()
bindRenderbuffer self
self GLenum
target Maybe WebGLRenderbuffer
renderbuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bindRenderbuffer"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, Maybe WebGLRenderbuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLRenderbuffer
renderbuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bindTexture Mozilla WebGLRenderingContextBase.bindTexture documentation> 
bindTexture ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> GLenum -> Maybe WebGLTexture -> m ()
bindTexture :: self -> GLenum -> Maybe WebGLTexture -> m ()
bindTexture self
self GLenum
target Maybe WebGLTexture
texture
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bindTexture"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, Maybe WebGLTexture -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLTexture
texture]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.blendColor Mozilla WebGLRenderingContextBase.blendColor documentation> 
blendColor ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLclampf -> GLclampf -> GLclampf -> GLclampf -> m ()
blendColor :: self -> GLclampf -> GLclampf -> GLclampf -> GLclampf -> m ()
blendColor self
self GLclampf
red GLclampf
green GLclampf
blue GLclampf
alpha
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"blendColor"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
red, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
green, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
blue, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
alpha]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.blendEquation Mozilla WebGLRenderingContextBase.blendEquation documentation> 
blendEquation ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> m ()
blendEquation :: self -> GLenum -> m ()
blendEquation self
self GLenum
mode
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"blendEquation"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.blendEquationSeparate Mozilla WebGLRenderingContextBase.blendEquationSeparate documentation> 
blendEquationSeparate ::
                      (MonadDOM m, IsWebGLRenderingContextBase self) =>
                        self -> GLenum -> GLenum -> m ()
blendEquationSeparate :: self -> GLenum -> GLenum -> m ()
blendEquationSeparate self
self GLenum
modeRGB GLenum
modeAlpha
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"blendEquationSeparate"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
modeRGB, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
modeAlpha]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.blendFunc Mozilla WebGLRenderingContextBase.blendFunc documentation> 
blendFunc ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLenum -> GLenum -> m ()
blendFunc :: self -> GLenum -> GLenum -> m ()
blendFunc self
self GLenum
sfactor GLenum
dfactor
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"blendFunc"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
sfactor, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
dfactor]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.blendFuncSeparate Mozilla WebGLRenderingContextBase.blendFuncSeparate documentation> 
blendFuncSeparate ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
blendFuncSeparate :: self -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
blendFuncSeparate self
self GLenum
srcRGB GLenum
dstRGB GLenum
srcAlpha GLenum
dstAlpha
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"blendFuncSeparate"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
srcRGB, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
dstRGB, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
srcAlpha,
             GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
dstAlpha]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bufferData Mozilla WebGLRenderingContextBase.bufferData documentation> 
bufferData ::
           (MonadDOM m, IsWebGLRenderingContextBase self,
            IsBufferDataSource data') =>
             self -> GLenum -> Maybe data' -> GLenum -> m ()
bufferData :: self -> GLenum -> Maybe data' -> GLenum -> m ()
bufferData self
self GLenum
target Maybe data'
data' GLenum
usage
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bufferData"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, Maybe data' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe data'
data', GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
usage]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bufferData Mozilla WebGLRenderingContextBase.bufferData documentation> 
bufferDataPtr ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> GLsizeiptr -> GLenum -> m ()
bufferDataPtr :: self -> GLenum -> GLsizeiptr -> GLenum -> m ()
bufferDataPtr self
self GLenum
target GLsizeiptr
size GLenum
usage
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bufferData"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLsizeiptr -> JSM JSVal
forall a. Integral a => a -> JSM JSVal
integralToDoubleToJSVal GLsizeiptr
size, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
usage]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.bufferSubData Mozilla WebGLRenderingContextBase.bufferSubData documentation> 
bufferSubData ::
              (MonadDOM m, IsWebGLRenderingContextBase self,
               IsBufferDataSource data') =>
                self -> GLenum -> GLintptr -> Maybe data' -> m ()
bufferSubData :: self -> GLenum -> GLsizeiptr -> Maybe data' -> m ()
bufferSubData self
self GLenum
target GLsizeiptr
offset Maybe data'
data'
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"bufferSubData"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLsizeiptr -> JSM JSVal
forall a. Integral a => a -> JSM JSVal
integralToDoubleToJSVal GLsizeiptr
offset, Maybe data' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe data'
data']))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.checkFramebufferStatus Mozilla WebGLRenderingContextBase.checkFramebufferStatus documentation> 
checkFramebufferStatus ::
                       (MonadDOM m, IsWebGLRenderingContextBase self) =>
                         self -> GLenum -> m GLenum
checkFramebufferStatus :: self -> GLenum -> m GLenum
checkFramebufferStatus self
self GLenum
target
  = DOM GLenum -> m GLenum
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
          [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"checkFramebufferStatus"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target])
         JSM JSVal -> (JSVal -> DOM GLenum) -> DOM GLenum
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLenum
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.checkFramebufferStatus Mozilla WebGLRenderingContextBase.checkFramebufferStatus documentation> 
checkFramebufferStatus_ ::
                        (MonadDOM m, IsWebGLRenderingContextBase self) =>
                          self -> GLenum -> m ()
checkFramebufferStatus_ :: self -> GLenum -> m ()
checkFramebufferStatus_ self
self GLenum
target
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"checkFramebufferStatus"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.clear Mozilla WebGLRenderingContextBase.clear documentation> 
clear ::
      (MonadDOM m, IsWebGLRenderingContextBase self) =>
        self -> GLbitfield -> m ()
clear :: self -> GLenum -> m ()
clear self
self GLenum
mask
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"clear" [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mask]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.clearColor Mozilla WebGLRenderingContextBase.clearColor documentation> 
clearColor ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLclampf -> GLclampf -> GLclampf -> GLclampf -> m ()
clearColor :: self -> GLclampf -> GLclampf -> GLclampf -> GLclampf -> m ()
clearColor self
self GLclampf
red GLclampf
green GLclampf
blue GLclampf
alpha
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"clearColor"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
red, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
green, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
blue, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
alpha]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.clearDepth Mozilla WebGLRenderingContextBase.clearDepth documentation> 
clearDepth ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLclampf -> m ()
clearDepth :: self -> GLclampf -> m ()
clearDepth self
self GLclampf
depth
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"clearDepth"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
depth]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.clearStencil Mozilla WebGLRenderingContextBase.clearStencil documentation> 
clearStencil ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> GLint -> m ()
clearStencil :: self -> GLint -> m ()
clearStencil self
self GLint
s
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"clearStencil"
            [GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
s]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.colorMask Mozilla WebGLRenderingContextBase.colorMask documentation> 
colorMask ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> m ()
colorMask :: self -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> m ()
colorMask self
self GLboolean
red GLboolean
green GLboolean
blue GLboolean
alpha
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"colorMask"
            [GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
red, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
green, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
blue, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
alpha]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.compileShader Mozilla WebGLRenderingContextBase.compileShader documentation> 
compileShader ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> Maybe WebGLShader -> m ()
compileShader :: self -> Maybe WebGLShader -> m ()
compileShader self
self Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"compileShader"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.compressedTexImage2D Mozilla WebGLRenderingContextBase.compressedTexImage2D documentation> 
compressedTexImage2D ::
                     (MonadDOM m, IsWebGLRenderingContextBase self,
                      IsArrayBufferView data') =>
                       self ->
                         GLenum ->
                           GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> data' -> m ()
compressedTexImage2D :: self
-> GLenum
-> GLint
-> GLenum
-> GLint
-> GLint
-> GLint
-> data'
-> m ()
compressedTexImage2D self
self GLenum
target GLint
level GLenum
internalformat GLint
width GLint
height
  GLint
border data'
data'
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"compressedTexImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
internalformat,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
border, data' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal data'
data']))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.compressedTexSubImage2D Mozilla WebGLRenderingContextBase.compressedTexSubImage2D documentation> 
compressedTexSubImage2D ::
                        (MonadDOM m, IsWebGLRenderingContextBase self,
                         IsArrayBufferView data') =>
                          self ->
                            GLenum ->
                              GLint ->
                                GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> data' -> m ()
compressedTexSubImage2D :: self
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> GLenum
-> data'
-> m ()
compressedTexSubImage2D self
self GLenum
target GLint
level GLint
xoffset GLint
yoffset GLint
width
  GLint
height GLenum
format data'
data'
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"compressedTexSubImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
xoffset, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
yoffset,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format, data' -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal data'
data']))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.copyTexImage2D Mozilla WebGLRenderingContextBase.copyTexImage2D documentation> 
copyTexImage2D ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self ->
                   GLenum ->
                     GLint ->
                       GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> m ()
copyTexImage2D :: self
-> GLenum
-> GLint
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> m ()
copyTexImage2D self
self GLenum
target GLint
level GLenum
internalformat GLint
x GLint
y GLint
width GLint
height
  GLint
border
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"copyTexImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
internalformat, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
border]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.copyTexSubImage2D Mozilla WebGLRenderingContextBase.copyTexSubImage2D documentation> 
copyTexSubImage2D ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self ->
                      GLenum ->
                        GLint ->
                          GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
copyTexSubImage2D :: self
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> m ()
copyTexSubImage2D self
self GLenum
target GLint
level GLint
xoffset GLint
yoffset GLint
x GLint
y GLint
width
  GLint
height
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"copyTexSubImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
xoffset, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
yoffset,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createBuffer Mozilla WebGLRenderingContextBase.createBuffer documentation> 
createBuffer ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> m WebGLBuffer
createBuffer :: self -> m WebGLBuffer
createBuffer self
self
  = DOM WebGLBuffer -> m WebGLBuffer
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createBuffer" ()) JSM JSVal -> (JSVal -> DOM WebGLBuffer) -> DOM WebGLBuffer
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM WebGLBuffer
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createBuffer Mozilla WebGLRenderingContextBase.createBuffer documentation> 
createBuffer_ ::
              (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
createBuffer_ :: self -> m ()
createBuffer_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createBuffer" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createFramebuffer Mozilla WebGLRenderingContextBase.createFramebuffer documentation> 
createFramebuffer ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> m WebGLFramebuffer
createFramebuffer :: self -> m WebGLFramebuffer
createFramebuffer self
self
  = DOM WebGLFramebuffer -> m WebGLFramebuffer
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createFramebuffer" ())
         JSM JSVal
-> (JSVal -> DOM WebGLFramebuffer) -> DOM WebGLFramebuffer
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLFramebuffer
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createFramebuffer Mozilla WebGLRenderingContextBase.createFramebuffer documentation> 
createFramebuffer_ ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
createFramebuffer_ :: self -> m ()
createFramebuffer_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createFramebuffer" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createProgram Mozilla WebGLRenderingContextBase.createProgram documentation> 
createProgram ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> m WebGLProgram
createProgram :: self -> m WebGLProgram
createProgram self
self
  = DOM WebGLProgram -> m WebGLProgram
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createProgram" ()) JSM JSVal -> (JSVal -> DOM WebGLProgram) -> DOM WebGLProgram
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM WebGLProgram
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createProgram Mozilla WebGLRenderingContextBase.createProgram documentation> 
createProgram_ ::
               (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
createProgram_ :: self -> m ()
createProgram_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createProgram" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createRenderbuffer Mozilla WebGLRenderingContextBase.createRenderbuffer documentation> 
createRenderbuffer ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> m WebGLRenderbuffer
createRenderbuffer :: self -> m WebGLRenderbuffer
createRenderbuffer self
self
  = DOM WebGLRenderbuffer -> m WebGLRenderbuffer
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createRenderbuffer"
          ())
         JSM JSVal
-> (JSVal -> DOM WebGLRenderbuffer) -> DOM WebGLRenderbuffer
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLRenderbuffer
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createRenderbuffer Mozilla WebGLRenderingContextBase.createRenderbuffer documentation> 
createRenderbuffer_ ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
createRenderbuffer_ :: self -> m ()
createRenderbuffer_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createRenderbuffer"
            ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createShader Mozilla WebGLRenderingContextBase.createShader documentation> 
createShader ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> GLenum -> m WebGLShader
createShader :: self -> GLenum -> m WebGLShader
createShader self
self GLenum
type'
  = DOM WebGLShader -> m WebGLShader
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createShader"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type'])
         JSM JSVal -> (JSVal -> DOM WebGLShader) -> DOM WebGLShader
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLShader
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createShader Mozilla WebGLRenderingContextBase.createShader documentation> 
createShader_ ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> m ()
createShader_ :: self -> GLenum -> m ()
createShader_ self
self GLenum
type'
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createShader"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type']))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createTexture Mozilla WebGLRenderingContextBase.createTexture documentation> 
createTexture ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> m WebGLTexture
createTexture :: self -> m WebGLTexture
createTexture self
self
  = DOM WebGLTexture -> m WebGLTexture
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createTexture" ()) JSM JSVal -> (JSVal -> DOM WebGLTexture) -> DOM WebGLTexture
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM WebGLTexture
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.createTexture Mozilla WebGLRenderingContextBase.createTexture documentation> 
createTexture_ ::
               (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
createTexture_ :: self -> m ()
createTexture_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"createTexture" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.cullFace Mozilla WebGLRenderingContextBase.cullFace documentation> 
cullFace ::
         (MonadDOM m, IsWebGLRenderingContextBase self) =>
           self -> GLenum -> m ()
cullFace :: self -> GLenum -> m ()
cullFace self
self GLenum
mode
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"cullFace"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteBuffer Mozilla WebGLRenderingContextBase.deleteBuffer documentation> 
deleteBuffer ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> Maybe WebGLBuffer -> m ()
deleteBuffer :: self -> Maybe WebGLBuffer -> m ()
deleteBuffer self
self Maybe WebGLBuffer
buffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteBuffer"
            [Maybe WebGLBuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLBuffer
buffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteFramebuffer Mozilla WebGLRenderingContextBase.deleteFramebuffer documentation> 
deleteFramebuffer ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> Maybe WebGLFramebuffer -> m ()
deleteFramebuffer :: self -> Maybe WebGLFramebuffer -> m ()
deleteFramebuffer self
self Maybe WebGLFramebuffer
framebuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteFramebuffer"
            [Maybe WebGLFramebuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLFramebuffer
framebuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteProgram Mozilla WebGLRenderingContextBase.deleteProgram documentation> 
deleteProgram ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> Maybe WebGLProgram -> m ()
deleteProgram :: self -> Maybe WebGLProgram -> m ()
deleteProgram self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteProgram"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteRenderbuffer Mozilla WebGLRenderingContextBase.deleteRenderbuffer documentation> 
deleteRenderbuffer ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> Maybe WebGLRenderbuffer -> m ()
deleteRenderbuffer :: self -> Maybe WebGLRenderbuffer -> m ()
deleteRenderbuffer self
self Maybe WebGLRenderbuffer
renderbuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteRenderbuffer"
            [Maybe WebGLRenderbuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLRenderbuffer
renderbuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteShader Mozilla WebGLRenderingContextBase.deleteShader documentation> 
deleteShader ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> Maybe WebGLShader -> m ()
deleteShader :: self -> Maybe WebGLShader -> m ()
deleteShader self
self Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteShader"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.deleteTexture Mozilla WebGLRenderingContextBase.deleteTexture documentation> 
deleteTexture ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> Maybe WebGLTexture -> m ()
deleteTexture :: self -> Maybe WebGLTexture -> m ()
deleteTexture self
self Maybe WebGLTexture
texture
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"deleteTexture"
            [Maybe WebGLTexture -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLTexture
texture]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.depthFunc Mozilla WebGLRenderingContextBase.depthFunc documentation> 
depthFunc ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLenum -> m ()
depthFunc :: self -> GLenum -> m ()
depthFunc self
self GLenum
func
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"depthFunc"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
func]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.depthMask Mozilla WebGLRenderingContextBase.depthMask documentation> 
depthMask ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLboolean -> m ()
depthMask :: self -> GLboolean -> m ()
depthMask self
self GLboolean
flag
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"depthMask"
            [GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
flag]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.depthRange Mozilla WebGLRenderingContextBase.depthRange documentation> 
depthRange ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLclampf -> GLclampf -> m ()
depthRange :: self -> GLclampf -> GLclampf -> m ()
depthRange self
self GLclampf
zNear GLclampf
zFar
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"depthRange"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
zNear, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
zFar]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.detachShader Mozilla WebGLRenderingContextBase.detachShader documentation> 
detachShader ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> Maybe WebGLProgram -> Maybe WebGLShader -> m ()
detachShader :: self -> Maybe WebGLProgram -> Maybe WebGLShader -> m ()
detachShader self
self Maybe WebGLProgram
program Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"detachShader"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.disable Mozilla WebGLRenderingContextBase.disable documentation> 
disable ::
        (MonadDOM m, IsWebGLRenderingContextBase self) =>
          self -> GLenum -> m ()
disable :: self -> GLenum -> m ()
disable self
self GLenum
cap
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"disable"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
cap]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.disableVertexAttribArray Mozilla WebGLRenderingContextBase.disableVertexAttribArray documentation> 
disableVertexAttribArray ::
                         (MonadDOM m, IsWebGLRenderingContextBase self) =>
                           self -> GLuint -> m ()
disableVertexAttribArray :: self -> GLenum -> m ()
disableVertexAttribArray self
self GLenum
index
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"disableVertexAttribArray"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.drawArrays Mozilla WebGLRenderingContextBase.drawArrays documentation> 
drawArrays ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLenum -> GLint -> GLsizei -> m ()
drawArrays :: self -> GLenum -> GLint -> GLint -> m ()
drawArrays self
self GLenum
mode GLint
first GLint
count
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"drawArrays"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
first, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
count]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.drawElements Mozilla WebGLRenderingContextBase.drawElements documentation> 
drawElements ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> GLenum -> GLsizei -> GLenum -> GLintptr -> m ()
drawElements :: self -> GLenum -> GLint -> GLenum -> GLsizeiptr -> m ()
drawElements self
self GLenum
mode GLint
count GLenum
type' GLsizeiptr
offset
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"drawElements"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
count, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type',
             GLsizeiptr -> JSM JSVal
forall a. Integral a => a -> JSM JSVal
integralToDoubleToJSVal GLsizeiptr
offset]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.enable Mozilla WebGLRenderingContextBase.enable documentation> 
enable ::
       (MonadDOM m, IsWebGLRenderingContextBase self) =>
         self -> GLenum -> m ()
enable :: self -> GLenum -> m ()
enable self
self GLenum
cap
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"enable" [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
cap]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.enableVertexAttribArray Mozilla WebGLRenderingContextBase.enableVertexAttribArray documentation> 
enableVertexAttribArray ::
                        (MonadDOM m, IsWebGLRenderingContextBase self) =>
                          self -> GLuint -> m ()
enableVertexAttribArray :: self -> GLenum -> m ()
enableVertexAttribArray self
self GLenum
index
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"enableVertexAttribArray"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.finish Mozilla WebGLRenderingContextBase.finish documentation> 
finish ::
       (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
finish :: self -> m ()
finish self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"finish" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.flush Mozilla WebGLRenderingContextBase.flush documentation> 
flush ::
      (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
flush :: self -> m ()
flush self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"flush" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.framebufferRenderbuffer Mozilla WebGLRenderingContextBase.framebufferRenderbuffer documentation> 
framebufferRenderbuffer ::
                        (MonadDOM m, IsWebGLRenderingContextBase self) =>
                          self ->
                            GLenum -> GLenum -> GLenum -> Maybe WebGLRenderbuffer -> m ()
framebufferRenderbuffer :: self
-> GLenum -> GLenum -> GLenum -> Maybe WebGLRenderbuffer -> m ()
framebufferRenderbuffer self
self GLenum
target GLenum
attachment GLenum
renderbuffertarget
  Maybe WebGLRenderbuffer
renderbuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"framebufferRenderbuffer"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
attachment, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
renderbuffertarget,
             Maybe WebGLRenderbuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLRenderbuffer
renderbuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.framebufferTexture2D Mozilla WebGLRenderingContextBase.framebufferTexture2D documentation> 
framebufferTexture2D ::
                     (MonadDOM m, IsWebGLRenderingContextBase self) =>
                       self ->
                         GLenum -> GLenum -> GLenum -> Maybe WebGLTexture -> GLint -> m ()
framebufferTexture2D :: self
-> GLenum
-> GLenum
-> GLenum
-> Maybe WebGLTexture
-> GLint
-> m ()
framebufferTexture2D self
self GLenum
target GLenum
attachment GLenum
textarget Maybe WebGLTexture
texture GLint
level
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"framebufferTexture2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
attachment, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
textarget,
             Maybe WebGLTexture -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLTexture
texture, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.frontFace Mozilla WebGLRenderingContextBase.frontFace documentation> 
frontFace ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLenum -> m ()
frontFace :: self -> GLenum -> m ()
frontFace self
self GLenum
mode
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"frontFace"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.generateMipmap Mozilla WebGLRenderingContextBase.generateMipmap documentation> 
generateMipmap ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLenum -> m ()
generateMipmap :: self -> GLenum -> m ()
generateMipmap self
self GLenum
target
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"generateMipmap"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getActiveAttrib Mozilla WebGLRenderingContextBase.getActiveAttrib documentation> 
getActiveAttrib ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> Maybe WebGLProgram -> GLuint -> m WebGLActiveInfo
getActiveAttrib :: self -> Maybe WebGLProgram -> GLenum -> m WebGLActiveInfo
getActiveAttrib self
self Maybe WebGLProgram
program GLenum
index
  = DOM WebGLActiveInfo -> m WebGLActiveInfo
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getActiveAttrib"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index])
         JSM JSVal -> (JSVal -> DOM WebGLActiveInfo) -> DOM WebGLActiveInfo
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLActiveInfo
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getActiveAttrib Mozilla WebGLRenderingContextBase.getActiveAttrib documentation> 
getActiveAttrib_ ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> Maybe WebGLProgram -> GLuint -> m ()
getActiveAttrib_ :: self -> Maybe WebGLProgram -> GLenum -> m ()
getActiveAttrib_ self
self Maybe WebGLProgram
program GLenum
index
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getActiveAttrib"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getActiveUniform Mozilla WebGLRenderingContextBase.getActiveUniform documentation> 
getActiveUniform ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> Maybe WebGLProgram -> GLuint -> m WebGLActiveInfo
getActiveUniform :: self -> Maybe WebGLProgram -> GLenum -> m WebGLActiveInfo
getActiveUniform self
self Maybe WebGLProgram
program GLenum
index
  = DOM WebGLActiveInfo -> m WebGLActiveInfo
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getActiveUniform"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index])
         JSM JSVal -> (JSVal -> DOM WebGLActiveInfo) -> DOM WebGLActiveInfo
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLActiveInfo
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getActiveUniform Mozilla WebGLRenderingContextBase.getActiveUniform documentation> 
getActiveUniform_ ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> Maybe WebGLProgram -> GLuint -> m ()
getActiveUniform_ :: self -> Maybe WebGLProgram -> GLenum -> m ()
getActiveUniform_ self
self Maybe WebGLProgram
program GLenum
index
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getActiveUniform"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getAttachedShaders Mozilla WebGLRenderingContextBase.getAttachedShaders documentation> 
getAttachedShaders ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> Maybe WebGLProgram -> m (Maybe [WebGLShader])
getAttachedShaders :: self -> Maybe WebGLProgram -> m (Maybe [WebGLShader])
getAttachedShaders self
self Maybe WebGLProgram
program
  = DOM (Maybe [WebGLShader]) -> m (Maybe [WebGLShader])
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttachedShaders"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program])
         JSM JSVal
-> (JSVal -> DOM (Maybe [WebGLShader]))
-> DOM (Maybe [WebGLShader])
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (JSVal -> JSM [WebGLShader]) -> JSVal -> DOM (Maybe [WebGLShader])
forall value a.
ToJSVal value =>
(JSVal -> JSM a) -> value -> JSM (Maybe a)
maybeNullOrUndefined' JSVal -> JSM [WebGLShader]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getAttachedShaders Mozilla WebGLRenderingContextBase.getAttachedShaders documentation> 
getAttachedShaders_ ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> Maybe WebGLProgram -> m ()
getAttachedShaders_ :: self -> Maybe WebGLProgram -> m ()
getAttachedShaders_ self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttachedShaders"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getAttribLocation Mozilla WebGLRenderingContextBase.getAttribLocation documentation> 
getAttribLocation ::
                  (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                    self -> Maybe WebGLProgram -> name -> m GLint
getAttribLocation :: self -> Maybe WebGLProgram -> name -> m GLint
getAttribLocation self
self Maybe WebGLProgram
program name
name
  = DOM GLint -> m GLint
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribLocation"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
         JSM JSVal -> (JSVal -> DOM GLint) -> DOM GLint
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLint
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getAttribLocation Mozilla WebGLRenderingContextBase.getAttribLocation documentation> 
getAttribLocation_ ::
                   (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                     self -> Maybe WebGLProgram -> name -> m ()
getAttribLocation_ :: self -> Maybe WebGLProgram -> name -> m ()
getAttribLocation_ self
self Maybe WebGLProgram
program name
name
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getAttribLocation"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getBufferParameter Mozilla WebGLRenderingContextBase.getBufferParameter documentation> 
getBufferParameter ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> GLenum -> GLenum -> m JSVal
getBufferParameter :: self -> GLenum -> GLenum -> m JSVal
getBufferParameter self
self GLenum
target GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getBufferParameter"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getBufferParameter Mozilla WebGLRenderingContextBase.getBufferParameter documentation> 
getBufferParameter_ ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> GLenum -> GLenum -> m ()
getBufferParameter_ :: self -> GLenum -> GLenum -> m ()
getBufferParameter_ self
self GLenum
target GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getBufferParameter"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getContextAttributes Mozilla WebGLRenderingContextBase.getContextAttributes documentation> 
getContextAttributes ::
                     (MonadDOM m, IsWebGLRenderingContextBase self) =>
                       self -> m (Maybe WebGLContextAttributes)
getContextAttributes :: self -> m (Maybe WebGLContextAttributes)
getContextAttributes self
self
  = DOM (Maybe WebGLContextAttributes)
-> m (Maybe WebGLContextAttributes)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getContextAttributes"
          ())
         JSM JSVal
-> (JSVal -> DOM (Maybe WebGLContextAttributes))
-> DOM (Maybe WebGLContextAttributes)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe WebGLContextAttributes)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getContextAttributes Mozilla WebGLRenderingContextBase.getContextAttributes documentation> 
getContextAttributes_ ::
                      (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
getContextAttributes_ :: self -> m ()
getContextAttributes_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getContextAttributes"
            ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getContextAttributes Mozilla WebGLRenderingContextBase.getContextAttributes documentation> 
getContextAttributesUnsafe ::
                           (MonadDOM m, IsWebGLRenderingContextBase self, HasCallStack) =>
                             self -> m WebGLContextAttributes
getContextAttributesUnsafe :: self -> m WebGLContextAttributes
getContextAttributesUnsafe self
self
  = DOM WebGLContextAttributes -> m WebGLContextAttributes
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getContextAttributes"
           ())
          JSM JSVal
-> (JSVal -> DOM (Maybe WebGLContextAttributes))
-> DOM (Maybe WebGLContextAttributes)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe WebGLContextAttributes)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe WebGLContextAttributes)
-> (Maybe WebGLContextAttributes -> DOM WebGLContextAttributes)
-> DOM WebGLContextAttributes
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM WebGLContextAttributes
-> (WebGLContextAttributes -> DOM WebGLContextAttributes)
-> Maybe WebGLContextAttributes
-> DOM WebGLContextAttributes
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM WebGLContextAttributes
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") WebGLContextAttributes -> DOM WebGLContextAttributes
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getContextAttributes Mozilla WebGLRenderingContextBase.getContextAttributes documentation> 
getContextAttributesUnchecked ::
                              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                                self -> m WebGLContextAttributes
getContextAttributesUnchecked :: self -> m WebGLContextAttributes
getContextAttributesUnchecked self
self
  = DOM WebGLContextAttributes -> m WebGLContextAttributes
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getContextAttributes"
          ())
         JSM JSVal
-> (JSVal -> DOM WebGLContextAttributes)
-> DOM WebGLContextAttributes
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLContextAttributes
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getError Mozilla WebGLRenderingContextBase.getError documentation> 
getError ::
         (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m GLenum
getError :: self -> m GLenum
getError self
self
  = DOM GLenum -> m GLenum
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getError" ()) JSM JSVal -> (JSVal -> DOM GLenum) -> DOM GLenum
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM GLenum
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getError Mozilla WebGLRenderingContextBase.getError documentation> 
getError_ ::
          (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
getError_ :: self -> m ()
getError_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getError" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getSupportedExtensions Mozilla WebGLRenderingContextBase.getSupportedExtensions documentation> 
getSupportedExtensions ::
                       (MonadDOM m, IsWebGLRenderingContextBase self,
                        FromJSString result) =>
                         self -> m (Maybe [result])
getSupportedExtensions :: self -> m (Maybe [result])
getSupportedExtensions self
self
  = DOM (Maybe [result]) -> m (Maybe [result])
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
          [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getSupportedExtensions"
          ())
         JSM JSVal
-> (JSVal -> DOM (Maybe [result])) -> DOM (Maybe [result])
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (JSVal -> JSM [result]) -> JSVal -> DOM (Maybe [result])
forall value a.
ToJSVal value =>
(JSVal -> JSM a) -> value -> JSM (Maybe a)
maybeNullOrUndefined' JSVal -> JSM [result]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getSupportedExtensions Mozilla WebGLRenderingContextBase.getSupportedExtensions documentation> 
getSupportedExtensions_ ::
                        (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
getSupportedExtensions_ :: self -> m ()
getSupportedExtensions_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getSupportedExtensions"
            ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getExtension Mozilla WebGLRenderingContextBase.getExtension documentation> 
getExtension ::
             (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
               self -> name -> m (Maybe GObject)
getExtension :: self -> name -> m (Maybe GObject)
getExtension self
self name
name
  = DOM (Maybe GObject) -> m (Maybe GObject)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getExtension"
          [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
         JSM JSVal -> (JSVal -> DOM (Maybe GObject)) -> DOM (Maybe GObject)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe GObject)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getExtension Mozilla WebGLRenderingContextBase.getExtension documentation> 
getExtension_ ::
              (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                self -> name -> m ()
getExtension_ :: self -> name -> m ()
getExtension_ self
self name
name
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getExtension"
            [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getExtension Mozilla WebGLRenderingContextBase.getExtension documentation> 
getExtensionUnsafe ::
                   (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name,
                    HasCallStack) =>
                     self -> name -> m GObject
getExtensionUnsafe :: self -> name -> m GObject
getExtensionUnsafe self
self name
name
  = DOM GObject -> m GObject
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getExtension"
           [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
          JSM JSVal -> (JSVal -> DOM (Maybe GObject)) -> DOM (Maybe GObject)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe GObject)
forall a. FromJSVal a => JSVal -> JSM (Maybe a)
fromJSVal)
         DOM (Maybe GObject)
-> (Maybe GObject -> DOM GObject) -> DOM GObject
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM GObject
-> (GObject -> DOM GObject) -> Maybe GObject -> DOM GObject
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM GObject
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") GObject -> DOM GObject
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getExtension Mozilla WebGLRenderingContextBase.getExtension documentation> 
getExtensionUnchecked ::
                      (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                        self -> name -> m GObject
getExtensionUnchecked :: self -> name -> m GObject
getExtensionUnchecked self
self name
name
  = DOM GObject -> m GObject
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getExtension"
          [name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
         JSM JSVal -> (JSVal -> DOM GObject) -> DOM GObject
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GObject
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getFramebufferAttachmentParameter Mozilla WebGLRenderingContextBase.getFramebufferAttachmentParameter documentation> 
getFramebufferAttachmentParameter ::
                                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                                    self -> GLenum -> GLenum -> GLenum -> m JSVal
getFramebufferAttachmentParameter :: self -> GLenum -> GLenum -> GLenum -> m JSVal
getFramebufferAttachmentParameter self
self GLenum
target GLenum
attachment GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
          [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getFramebufferAttachmentParameter"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
attachment, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getFramebufferAttachmentParameter Mozilla WebGLRenderingContextBase.getFramebufferAttachmentParameter documentation> 
getFramebufferAttachmentParameter_ ::
                                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                                     self -> GLenum -> GLenum -> GLenum -> m ()
getFramebufferAttachmentParameter_ :: self -> GLenum -> GLenum -> GLenum -> m ()
getFramebufferAttachmentParameter_ self
self GLenum
target GLenum
attachment GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getFramebufferAttachmentParameter"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
attachment, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getParameter Mozilla WebGLRenderingContextBase.getParameter documentation> 
getParameter ::
             (MonadDOM m, IsWebGLRenderingContextBase self) =>
               self -> GLenum -> m JSVal
getParameter :: self -> GLenum -> m JSVal
getParameter self
self GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getParameter"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getParameter Mozilla WebGLRenderingContextBase.getParameter documentation> 
getParameter_ ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> m ()
getParameter_ :: self -> GLenum -> m ()
getParameter_ self
self GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getParameter"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramParameter Mozilla WebGLRenderingContextBase.getProgramParameter documentation> 
getProgramParameter ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> Maybe WebGLProgram -> GLenum -> m JSVal
getProgramParameter :: self -> Maybe WebGLProgram -> GLenum -> m JSVal
getProgramParameter self
self Maybe WebGLProgram
program GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramParameter"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramParameter Mozilla WebGLRenderingContextBase.getProgramParameter documentation> 
getProgramParameter_ ::
                     (MonadDOM m, IsWebGLRenderingContextBase self) =>
                       self -> Maybe WebGLProgram -> GLenum -> m ()
getProgramParameter_ :: self -> Maybe WebGLProgram -> GLenum -> m ()
getProgramParameter_ self
self Maybe WebGLProgram
program GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramParameter"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramInfoLog Mozilla WebGLRenderingContextBase.getProgramInfoLog documentation> 
getProgramInfoLog ::
                  (MonadDOM m, IsWebGLRenderingContextBase self,
                   FromJSString result) =>
                    self -> Maybe WebGLProgram -> m (Maybe result)
getProgramInfoLog :: self -> Maybe WebGLProgram -> m (Maybe result)
getProgramInfoLog self
self Maybe WebGLProgram
program
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramInfoLog"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program])
         JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramInfoLog Mozilla WebGLRenderingContextBase.getProgramInfoLog documentation> 
getProgramInfoLog_ ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> Maybe WebGLProgram -> m ()
getProgramInfoLog_ :: self -> Maybe WebGLProgram -> m ()
getProgramInfoLog_ self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramInfoLog"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramInfoLog Mozilla WebGLRenderingContextBase.getProgramInfoLog documentation> 
getProgramInfoLogUnsafe ::
                        (MonadDOM m, IsWebGLRenderingContextBase self, HasCallStack,
                         FromJSString result) =>
                          self -> Maybe WebGLProgram -> m result
getProgramInfoLogUnsafe :: self -> Maybe WebGLProgram -> m result
getProgramInfoLogUnsafe self
self Maybe WebGLProgram
program
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramInfoLog"
           [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program])
          JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getProgramInfoLog Mozilla WebGLRenderingContextBase.getProgramInfoLog documentation> 
getProgramInfoLogUnchecked ::
                           (MonadDOM m, IsWebGLRenderingContextBase self,
                            FromJSString result) =>
                             self -> Maybe WebGLProgram -> m result
getProgramInfoLogUnchecked :: self -> Maybe WebGLProgram -> m result
getProgramInfoLogUnchecked self
self Maybe WebGLProgram
program
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getProgramInfoLog"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getRenderbufferParameter Mozilla WebGLRenderingContextBase.getRenderbufferParameter documentation> 
getRenderbufferParameter ::
                         (MonadDOM m, IsWebGLRenderingContextBase self) =>
                           self -> GLenum -> GLenum -> m JSVal
getRenderbufferParameter :: self -> GLenum -> GLenum -> m JSVal
getRenderbufferParameter self
self GLenum
target GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
          [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getRenderbufferParameter"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getRenderbufferParameter Mozilla WebGLRenderingContextBase.getRenderbufferParameter documentation> 
getRenderbufferParameter_ ::
                          (MonadDOM m, IsWebGLRenderingContextBase self) =>
                            self -> GLenum -> GLenum -> m ()
getRenderbufferParameter_ :: self -> GLenum -> GLenum -> m ()
getRenderbufferParameter_ self
self GLenum
target GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getRenderbufferParameter"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderParameter Mozilla WebGLRenderingContextBase.getShaderParameter documentation> 
getShaderParameter ::
                   (MonadDOM m, IsWebGLRenderingContextBase self) =>
                     self -> Maybe WebGLShader -> GLenum -> m JSVal
getShaderParameter :: self -> Maybe WebGLShader -> GLenum -> m JSVal
getShaderParameter self
self Maybe WebGLShader
shader GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderParameter"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderParameter Mozilla WebGLRenderingContextBase.getShaderParameter documentation> 
getShaderParameter_ ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> Maybe WebGLShader -> GLenum -> m ()
getShaderParameter_ :: self -> Maybe WebGLShader -> GLenum -> m ()
getShaderParameter_ self
self Maybe WebGLShader
shader GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderParameter"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderInfoLog Mozilla WebGLRenderingContextBase.getShaderInfoLog documentation> 
getShaderInfoLog ::
                 (MonadDOM m, IsWebGLRenderingContextBase self,
                  FromJSString result) =>
                   self -> Maybe WebGLShader -> m (Maybe result)
getShaderInfoLog :: self -> Maybe WebGLShader -> m (Maybe result)
getShaderInfoLog self
self Maybe WebGLShader
shader
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderInfoLog"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
         JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderInfoLog Mozilla WebGLRenderingContextBase.getShaderInfoLog documentation> 
getShaderInfoLog_ ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> Maybe WebGLShader -> m ()
getShaderInfoLog_ :: self -> Maybe WebGLShader -> m ()
getShaderInfoLog_ self
self Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderInfoLog"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderInfoLog Mozilla WebGLRenderingContextBase.getShaderInfoLog documentation> 
getShaderInfoLogUnsafe ::
                       (MonadDOM m, IsWebGLRenderingContextBase self, HasCallStack,
                        FromJSString result) =>
                         self -> Maybe WebGLShader -> m result
getShaderInfoLogUnsafe :: self -> Maybe WebGLShader -> m result
getShaderInfoLogUnsafe self
self Maybe WebGLShader
shader
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderInfoLog"
           [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
          JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderInfoLog Mozilla WebGLRenderingContextBase.getShaderInfoLog documentation> 
getShaderInfoLogUnchecked ::
                          (MonadDOM m, IsWebGLRenderingContextBase self,
                           FromJSString result) =>
                            self -> Maybe WebGLShader -> m result
getShaderInfoLogUnchecked :: self -> Maybe WebGLShader -> m result
getShaderInfoLogUnchecked self
self Maybe WebGLShader
shader
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderInfoLog"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderPrecisionFormat Mozilla WebGLRenderingContextBase.getShaderPrecisionFormat documentation> 
getShaderPrecisionFormat ::
                         (MonadDOM m, IsWebGLRenderingContextBase self) =>
                           self -> GLenum -> GLenum -> m WebGLShaderPrecisionFormat
getShaderPrecisionFormat :: self -> GLenum -> GLenum -> m WebGLShaderPrecisionFormat
getShaderPrecisionFormat self
self GLenum
shadertype GLenum
precisiontype
  = DOM WebGLShaderPrecisionFormat -> m WebGLShaderPrecisionFormat
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
          [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderPrecisionFormat"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
shadertype, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
precisiontype])
         JSM JSVal
-> (JSVal -> DOM WebGLShaderPrecisionFormat)
-> DOM WebGLShaderPrecisionFormat
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLShaderPrecisionFormat
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderPrecisionFormat Mozilla WebGLRenderingContextBase.getShaderPrecisionFormat documentation> 
getShaderPrecisionFormat_ ::
                          (MonadDOM m, IsWebGLRenderingContextBase self) =>
                            self -> GLenum -> GLenum -> m ()
getShaderPrecisionFormat_ :: self -> GLenum -> GLenum -> m ()
getShaderPrecisionFormat_ self
self GLenum
shadertype GLenum
precisiontype
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^.
            [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderPrecisionFormat"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
shadertype, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
precisiontype]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderSource Mozilla WebGLRenderingContextBase.getShaderSource documentation> 
getShaderSource ::
                (MonadDOM m, IsWebGLRenderingContextBase self,
                 FromJSString result) =>
                  self -> Maybe WebGLShader -> m (Maybe result)
getShaderSource :: self -> Maybe WebGLShader -> m (Maybe result)
getShaderSource self
self Maybe WebGLShader
shader
  = DOM (Maybe result) -> m (Maybe result)
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderSource"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
         JSM JSVal -> (JSVal -> DOM (Maybe result)) -> DOM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderSource Mozilla WebGLRenderingContextBase.getShaderSource documentation> 
getShaderSource_ ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> Maybe WebGLShader -> m ()
getShaderSource_ :: self -> Maybe WebGLShader -> m ()
getShaderSource_ self
self Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderSource"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderSource Mozilla WebGLRenderingContextBase.getShaderSource documentation> 
getShaderSourceUnsafe ::
                      (MonadDOM m, IsWebGLRenderingContextBase self, HasCallStack,
                       FromJSString result) =>
                        self -> Maybe WebGLShader -> m result
getShaderSourceUnsafe :: self -> Maybe WebGLShader -> m result
getShaderSourceUnsafe self
self Maybe WebGLShader
shader
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderSource"
           [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
          JSM JSVal -> (JSVal -> JSM (Maybe result)) -> JSM (Maybe result)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM (Maybe result)
forall a. FromJSString a => JSVal -> JSM (Maybe a)
fromMaybeJSString)
         JSM (Maybe result) -> (Maybe result -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= DOM result -> (result -> DOM result) -> Maybe result -> DOM result
forall b a. b -> (a -> b) -> Maybe a -> b
maybe ([Char] -> DOM result
forall a. HasCallStack => [Char] -> a
Prelude.error [Char]
"Nothing to return") result -> DOM result
forall (m :: * -> *) a. Monad m => a -> m a
return)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getShaderSource Mozilla WebGLRenderingContextBase.getShaderSource documentation> 
getShaderSourceUnchecked ::
                         (MonadDOM m, IsWebGLRenderingContextBase self,
                          FromJSString result) =>
                           self -> Maybe WebGLShader -> m result
getShaderSourceUnchecked :: self -> Maybe WebGLShader -> m result
getShaderSourceUnchecked self
self Maybe WebGLShader
shader
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getShaderSource"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getTexParameter Mozilla WebGLRenderingContextBase.getTexParameter documentation> 
getTexParameter ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> GLenum -> GLenum -> m JSVal
getTexParameter :: self -> GLenum -> GLenum -> m JSVal
getTexParameter self
self GLenum
target GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getTexParameter"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getTexParameter Mozilla WebGLRenderingContextBase.getTexParameter documentation> 
getTexParameter_ ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> GLenum -> GLenum -> m ()
getTexParameter_ :: self -> GLenum -> GLenum -> m ()
getTexParameter_ self
self GLenum
target GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getTexParameter"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getUniform Mozilla WebGLRenderingContextBase.getUniform documentation> 
getUniform ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> Maybe WebGLProgram -> Maybe WebGLUniformLocation -> m JSVal
getUniform :: self -> Maybe WebGLProgram -> Maybe WebGLUniformLocation -> m JSVal
getUniform self
self Maybe WebGLProgram
program Maybe WebGLUniformLocation
location
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getUniform"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getUniform Mozilla WebGLRenderingContextBase.getUniform documentation> 
getUniform_ ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> Maybe WebGLProgram -> Maybe WebGLUniformLocation -> m ()
getUniform_ :: self -> Maybe WebGLProgram -> Maybe WebGLUniformLocation -> m ()
getUniform_ self
self Maybe WebGLProgram
program Maybe WebGLUniformLocation
location
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getUniform"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getUniformLocation Mozilla WebGLRenderingContextBase.getUniformLocation documentation> 
getUniformLocation ::
                   (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                     self -> Maybe WebGLProgram -> name -> m WebGLUniformLocation
getUniformLocation :: self -> Maybe WebGLProgram -> name -> m WebGLUniformLocation
getUniformLocation self
self Maybe WebGLProgram
program name
name
  = DOM WebGLUniformLocation -> m WebGLUniformLocation
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getUniformLocation"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name])
         JSM JSVal
-> (JSVal -> DOM WebGLUniformLocation) -> DOM WebGLUniformLocation
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM WebGLUniformLocation
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getUniformLocation Mozilla WebGLRenderingContextBase.getUniformLocation documentation> 
getUniformLocation_ ::
                    (MonadDOM m, IsWebGLRenderingContextBase self, ToJSString name) =>
                      self -> Maybe WebGLProgram -> name -> m ()
getUniformLocation_ :: self -> Maybe WebGLProgram -> name -> m ()
getUniformLocation_ self
self Maybe WebGLProgram
program name
name
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getUniformLocation"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program, name -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal name
name]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getVertexAttrib Mozilla WebGLRenderingContextBase.getVertexAttrib documentation> 
getVertexAttrib ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> GLuint -> GLenum -> m JSVal
getVertexAttrib :: self -> GLenum -> GLenum -> m JSVal
getVertexAttrib self
self GLenum
index GLenum
pname
  = JSM JSVal -> m JSVal
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getVertexAttrib"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> JSM JSVal) -> JSM JSVal
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getVertexAttrib Mozilla WebGLRenderingContextBase.getVertexAttrib documentation> 
getVertexAttrib_ ::
                 (MonadDOM m, IsWebGLRenderingContextBase self) =>
                   self -> GLuint -> GLenum -> m ()
getVertexAttrib_ :: self -> GLenum -> GLenum -> m ()
getVertexAttrib_ self
self GLenum
index GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getVertexAttrib"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getVertexAttribOffset Mozilla WebGLRenderingContextBase.getVertexAttribOffset documentation> 
getVertexAttribOffset ::
                      (MonadDOM m, IsWebGLRenderingContextBase self) =>
                        self -> GLuint -> GLenum -> m GLsizeiptr
getVertexAttribOffset :: self -> GLenum -> GLenum -> m GLsizeiptr
getVertexAttribOffset self
self GLenum
index GLenum
pname
  = DOM GLsizeiptr -> m GLsizeiptr
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getVertexAttribOffset"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname])
         JSM JSVal -> (JSVal -> DOM GLsizeiptr) -> DOM GLsizeiptr
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLsizeiptr
forall a. Integral a => JSVal -> JSM a
integralFromDoubleFromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.getVertexAttribOffset Mozilla WebGLRenderingContextBase.getVertexAttribOffset documentation> 
getVertexAttribOffset_ ::
                       (MonadDOM m, IsWebGLRenderingContextBase self) =>
                         self -> GLuint -> GLenum -> m ()
getVertexAttribOffset_ :: self -> GLenum -> GLenum -> m ()
getVertexAttribOffset_ self
self GLenum
index GLenum
pname
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"getVertexAttribOffset"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.hint Mozilla WebGLRenderingContextBase.hint documentation> 
hint ::
     (MonadDOM m, IsWebGLRenderingContextBase self) =>
       self -> GLenum -> GLenum -> m ()
hint :: self -> GLenum -> GLenum -> m ()
hint self
self GLenum
target GLenum
mode
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"hint"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mode]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isBuffer Mozilla WebGLRenderingContextBase.isBuffer documentation> 
isBuffer ::
         (MonadDOM m, IsWebGLRenderingContextBase self) =>
           self -> Maybe WebGLBuffer -> m GLboolean
isBuffer :: self -> Maybe WebGLBuffer -> m GLboolean
isBuffer self
self Maybe WebGLBuffer
buffer
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isBuffer"
          [Maybe WebGLBuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLBuffer
buffer])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isBuffer Mozilla WebGLRenderingContextBase.isBuffer documentation> 
isBuffer_ ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLBuffer -> m ()
isBuffer_ :: self -> Maybe WebGLBuffer -> m ()
isBuffer_ self
self Maybe WebGLBuffer
buffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isBuffer"
            [Maybe WebGLBuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLBuffer
buffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isContextLost Mozilla WebGLRenderingContextBase.isContextLost documentation> 
isContextLost ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> m GLboolean
isContextLost :: self -> m GLboolean
isContextLost self
self
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isContextLost" ()) JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isContextLost Mozilla WebGLRenderingContextBase.isContextLost documentation> 
isContextLost_ ::
               (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
isContextLost_ :: self -> m ()
isContextLost_ self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isContextLost" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isEnabled Mozilla WebGLRenderingContextBase.isEnabled documentation> 
isEnabled ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLenum -> m GLboolean
isEnabled :: self -> GLenum -> m GLboolean
isEnabled self
self GLenum
cap
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isEnabled"
          [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
cap])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isEnabled Mozilla WebGLRenderingContextBase.isEnabled documentation> 
isEnabled_ ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> GLenum -> m ()
isEnabled_ :: self -> GLenum -> m ()
isEnabled_ self
self GLenum
cap
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isEnabled"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
cap]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isFramebuffer Mozilla WebGLRenderingContextBase.isFramebuffer documentation> 
isFramebuffer ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> Maybe WebGLFramebuffer -> m GLboolean
isFramebuffer :: self -> Maybe WebGLFramebuffer -> m GLboolean
isFramebuffer self
self Maybe WebGLFramebuffer
framebuffer
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isFramebuffer"
          [Maybe WebGLFramebuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLFramebuffer
framebuffer])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isFramebuffer Mozilla WebGLRenderingContextBase.isFramebuffer documentation> 
isFramebuffer_ ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> Maybe WebGLFramebuffer -> m ()
isFramebuffer_ :: self -> Maybe WebGLFramebuffer -> m ()
isFramebuffer_ self
self Maybe WebGLFramebuffer
framebuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isFramebuffer"
            [Maybe WebGLFramebuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLFramebuffer
framebuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isProgram Mozilla WebGLRenderingContextBase.isProgram documentation> 
isProgram ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLProgram -> m GLboolean
isProgram :: self -> Maybe WebGLProgram -> m GLboolean
isProgram self
self Maybe WebGLProgram
program
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isProgram"
          [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isProgram Mozilla WebGLRenderingContextBase.isProgram documentation> 
isProgram_ ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> Maybe WebGLProgram -> m ()
isProgram_ :: self -> Maybe WebGLProgram -> m ()
isProgram_ self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isProgram"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isRenderbuffer Mozilla WebGLRenderingContextBase.isRenderbuffer documentation> 
isRenderbuffer ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> Maybe WebGLRenderbuffer -> m GLboolean
isRenderbuffer :: self -> Maybe WebGLRenderbuffer -> m GLboolean
isRenderbuffer self
self Maybe WebGLRenderbuffer
renderbuffer
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isRenderbuffer"
          [Maybe WebGLRenderbuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLRenderbuffer
renderbuffer])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isRenderbuffer Mozilla WebGLRenderingContextBase.isRenderbuffer documentation> 
isRenderbuffer_ ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> Maybe WebGLRenderbuffer -> m ()
isRenderbuffer_ :: self -> Maybe WebGLRenderbuffer -> m ()
isRenderbuffer_ self
self Maybe WebGLRenderbuffer
renderbuffer
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isRenderbuffer"
            [Maybe WebGLRenderbuffer -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLRenderbuffer
renderbuffer]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isShader Mozilla WebGLRenderingContextBase.isShader documentation> 
isShader ::
         (MonadDOM m, IsWebGLRenderingContextBase self) =>
           self -> Maybe WebGLShader -> m GLboolean
isShader :: self -> Maybe WebGLShader -> m GLboolean
isShader self
self Maybe WebGLShader
shader
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isShader"
          [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isShader Mozilla WebGLRenderingContextBase.isShader documentation> 
isShader_ ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLShader -> m ()
isShader_ :: self -> Maybe WebGLShader -> m ()
isShader_ self
self Maybe WebGLShader
shader
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isShader"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isTexture Mozilla WebGLRenderingContextBase.isTexture documentation> 
isTexture ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLTexture -> m GLboolean
isTexture :: self -> Maybe WebGLTexture -> m GLboolean
isTexture self
self Maybe WebGLTexture
texture
  = DOM GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isTexture"
          [Maybe WebGLTexture -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLTexture
texture])
         JSM JSVal -> (JSVal -> DOM GLboolean) -> DOM GLboolean
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLboolean
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.isTexture Mozilla WebGLRenderingContextBase.isTexture documentation> 
isTexture_ ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> Maybe WebGLTexture -> m ()
isTexture_ :: self -> Maybe WebGLTexture -> m ()
isTexture_ self
self Maybe WebGLTexture
texture
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"isTexture"
            [Maybe WebGLTexture -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLTexture
texture]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.lineWidth Mozilla WebGLRenderingContextBase.lineWidth documentation> 
lineWidth ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLfloat -> m ()
lineWidth :: self -> GLclampf -> m ()
lineWidth self
self GLclampf
width
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"lineWidth"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
width]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.linkProgram Mozilla WebGLRenderingContextBase.linkProgram documentation> 
linkProgram ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> Maybe WebGLProgram -> m ()
linkProgram :: self -> Maybe WebGLProgram -> m ()
linkProgram self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"linkProgram"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.pixelStorei Mozilla WebGLRenderingContextBase.pixelStorei documentation> 
pixelStorei ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> GLenum -> GLint -> m ()
pixelStorei :: self -> GLenum -> GLint -> m ()
pixelStorei self
self GLenum
pname GLint
param
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"pixelStorei"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
param]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.polygonOffset Mozilla WebGLRenderingContextBase.polygonOffset documentation> 
polygonOffset ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLfloat -> GLfloat -> m ()
polygonOffset :: self -> GLclampf -> GLclampf -> m ()
polygonOffset self
self GLclampf
factor GLclampf
units
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"polygonOffset"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
factor, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
units]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.readPixels Mozilla WebGLRenderingContextBase.readPixels documentation> 
readPixels ::
           (MonadDOM m, IsWebGLRenderingContextBase self,
            IsArrayBufferView pixels) =>
             self ->
               GLint ->
                 GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> pixels -> m ()
readPixels :: self
-> GLint
-> GLint
-> GLint
-> GLint
-> GLenum
-> GLenum
-> pixels
-> m ()
readPixels self
self GLint
x GLint
y GLint
width GLint
height GLenum
format GLenum
type' pixels
pixels
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"readPixels"
            [GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height,
             GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type', pixels -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal pixels
pixels]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.releaseShaderCompiler Mozilla WebGLRenderingContextBase.releaseShaderCompiler documentation> 
releaseShaderCompiler ::
                      (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m ()
releaseShaderCompiler :: self -> m ()
releaseShaderCompiler self
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"releaseShaderCompiler"
            ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.renderbufferStorage Mozilla WebGLRenderingContextBase.renderbufferStorage documentation> 
renderbufferStorage ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> GLenum -> GLenum -> GLsizei -> GLsizei -> m ()
renderbufferStorage :: self -> GLenum -> GLenum -> GLint -> GLint -> m ()
renderbufferStorage self
self GLenum
target GLenum
internalformat GLint
width GLint
height
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"renderbufferStorage"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
internalformat, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.sampleCoverage Mozilla WebGLRenderingContextBase.sampleCoverage documentation> 
sampleCoverage ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLclampf -> GLboolean -> m ()
sampleCoverage :: self -> GLclampf -> GLboolean -> m ()
sampleCoverage self
self GLclampf
value GLboolean
invert
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"sampleCoverage"
            [GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
value, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
invert]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.scissor Mozilla WebGLRenderingContextBase.scissor documentation> 
scissor ::
        (MonadDOM m, IsWebGLRenderingContextBase self) =>
          self -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
scissor :: self -> GLint -> GLint -> GLint -> GLint -> m ()
scissor self
self GLint
x GLint
y GLint
width GLint
height
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"scissor"
            [GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.shaderSource Mozilla WebGLRenderingContextBase.shaderSource documentation> 
shaderSource ::
             (MonadDOM m, IsWebGLRenderingContextBase self,
              ToJSString string) =>
               self -> Maybe WebGLShader -> string -> m ()
shaderSource :: self -> Maybe WebGLShader -> string -> m ()
shaderSource self
self Maybe WebGLShader
shader string
string
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"shaderSource"
            [Maybe WebGLShader -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLShader
shader, string -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal string
string]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilFunc Mozilla WebGLRenderingContextBase.stencilFunc documentation> 
stencilFunc ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> GLenum -> GLint -> GLuint -> m ()
stencilFunc :: self -> GLenum -> GLint -> GLenum -> m ()
stencilFunc self
self GLenum
func GLint
ref GLenum
mask
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilFunc"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
func, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
ref, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mask]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilFuncSeparate Mozilla WebGLRenderingContextBase.stencilFuncSeparate documentation> 
stencilFuncSeparate ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> GLenum -> GLenum -> GLint -> GLuint -> m ()
stencilFuncSeparate :: self -> GLenum -> GLenum -> GLint -> GLenum -> m ()
stencilFuncSeparate self
self GLenum
face GLenum
func GLint
ref GLenum
mask
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilFuncSeparate"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
face, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
func, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
ref, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mask]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilMask Mozilla WebGLRenderingContextBase.stencilMask documentation> 
stencilMask ::
            (MonadDOM m, IsWebGLRenderingContextBase self) =>
              self -> GLuint -> m ()
stencilMask :: self -> GLenum -> m ()
stencilMask self
self GLenum
mask
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilMask"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mask]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilMaskSeparate Mozilla WebGLRenderingContextBase.stencilMaskSeparate documentation> 
stencilMaskSeparate ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self -> GLenum -> GLuint -> m ()
stencilMaskSeparate :: self -> GLenum -> GLenum -> m ()
stencilMaskSeparate self
self GLenum
face GLenum
mask
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilMaskSeparate"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
face, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
mask]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilOp Mozilla WebGLRenderingContextBase.stencilOp documentation> 
stencilOp ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> GLenum -> GLenum -> GLenum -> m ()
stencilOp :: self -> GLenum -> GLenum -> GLenum -> m ()
stencilOp self
self GLenum
fail GLenum
zfail GLenum
zpass
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilOp"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
fail, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
zfail, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
zpass]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.stencilOpSeparate Mozilla WebGLRenderingContextBase.stencilOpSeparate documentation> 
stencilOpSeparate ::
                  (MonadDOM m, IsWebGLRenderingContextBase self) =>
                    self -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
stencilOpSeparate :: self -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
stencilOpSeparate self
self GLenum
face GLenum
fail GLenum
zfail GLenum
zpass
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"stencilOpSeparate"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
face, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
fail, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
zfail, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
zpass]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texParameterf Mozilla WebGLRenderingContextBase.texParameterf documentation> 
texParameterf ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> GLenum -> GLfloat -> m ()
texParameterf :: self -> GLenum -> GLenum -> GLclampf -> m ()
texParameterf self
self GLenum
target GLenum
pname GLclampf
param
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texParameterf"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
param]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texParameteri Mozilla WebGLRenderingContextBase.texParameteri documentation> 
texParameteri ::
              (MonadDOM m, IsWebGLRenderingContextBase self) =>
                self -> GLenum -> GLenum -> GLint -> m ()
texParameteri :: self -> GLenum -> GLenum -> GLint -> m ()
texParameteri self
self GLenum
target GLenum
pname GLint
param
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texParameteri"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
pname, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
param]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texImage2D Mozilla WebGLRenderingContextBase.texImage2D documentation> 
texImage2DView ::
               (MonadDOM m, IsWebGLRenderingContextBase self,
                IsArrayBufferView pixels) =>
                 self ->
                   GLenum ->
                     GLint ->
                       GLenum ->
                         GLsizei ->
                           GLsizei -> GLint -> GLenum -> GLenum -> Maybe pixels -> m ()
texImage2DView :: self
-> GLenum
-> GLint
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLenum
-> GLenum
-> Maybe pixels
-> m ()
texImage2DView self
self GLenum
target GLint
level GLenum
internalformat GLint
width GLint
height GLint
border
  GLenum
format GLenum
type' Maybe pixels
pixels
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
internalformat,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
border, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format,
             GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type', Maybe pixels -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe pixels
pixels]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texImage2D Mozilla WebGLRenderingContextBase.texImage2D documentation> 
texImage2D ::
           (MonadDOM m, IsWebGLRenderingContextBase self,
            IsTexImageSource source) =>
             self ->
               GLenum ->
                 GLint -> GLenum -> GLenum -> GLenum -> Maybe source -> m ()
texImage2D :: self
-> GLenum
-> GLint
-> GLenum
-> GLenum
-> GLenum
-> Maybe source
-> m ()
texImage2D self
self GLenum
target GLint
level GLenum
internalformat GLenum
format GLenum
type' Maybe source
source
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
internalformat,
             GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type', Maybe source -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe source
source]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texSubImage2D Mozilla WebGLRenderingContextBase.texSubImage2D documentation> 
texSubImage2DView ::
                  (MonadDOM m, IsWebGLRenderingContextBase self,
                   IsArrayBufferView pixels) =>
                    self ->
                      GLenum ->
                        GLint ->
                          GLint ->
                            GLint ->
                              GLsizei -> GLsizei -> GLenum -> GLenum -> Maybe pixels -> m ()
texSubImage2DView :: self
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLint
-> GLint
-> GLenum
-> GLenum
-> Maybe pixels
-> m ()
texSubImage2DView self
self GLenum
target GLint
level GLint
xoffset GLint
yoffset GLint
width GLint
height
  GLenum
format GLenum
type' Maybe pixels
pixels
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texSubImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
xoffset, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
yoffset,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type',
             Maybe pixels -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe pixels
pixels]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.texSubImage2D Mozilla WebGLRenderingContextBase.texSubImage2D documentation> 
texSubImage2D ::
              (MonadDOM m, IsWebGLRenderingContextBase self,
               IsTexImageSource source) =>
                self ->
                  GLenum ->
                    GLint -> GLint -> GLint -> GLenum -> GLenum -> Maybe source -> m ()
texSubImage2D :: self
-> GLenum
-> GLint
-> GLint
-> GLint
-> GLenum
-> GLenum
-> Maybe source
-> m ()
texSubImage2D self
self GLenum
target GLint
level GLint
xoffset GLint
yoffset GLenum
format GLenum
type' Maybe source
source
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"texSubImage2D"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
target, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
level, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
xoffset, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
yoffset,
             GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
format, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type', Maybe source -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe source
source]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform1f Mozilla WebGLRenderingContextBase.uniform1f documentation> 
uniform1f ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLUniformLocation -> GLfloat -> m ()
uniform1f :: self -> Maybe WebGLUniformLocation -> GLclampf -> m ()
uniform1f self
self Maybe WebGLUniformLocation
location GLclampf
x
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform1f"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform2f Mozilla WebGLRenderingContextBase.uniform2f documentation> 
uniform2f ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLUniformLocation -> GLfloat -> GLfloat -> m ()
uniform2f :: self -> Maybe WebGLUniformLocation -> GLclampf -> GLclampf -> m ()
uniform2f self
self Maybe WebGLUniformLocation
location GLclampf
x GLclampf
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform2f"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform3f Mozilla WebGLRenderingContextBase.uniform3f documentation> 
uniform3f ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self ->
              Maybe WebGLUniformLocation -> GLfloat -> GLfloat -> GLfloat -> m ()
uniform3f :: self
-> Maybe WebGLUniformLocation
-> GLclampf
-> GLclampf
-> GLclampf
-> m ()
uniform3f self
self Maybe WebGLUniformLocation
location GLclampf
x GLclampf
y GLclampf
z
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform3f"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
z]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform4f Mozilla WebGLRenderingContextBase.uniform4f documentation> 
uniform4f ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self ->
              Maybe WebGLUniformLocation ->
                GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
uniform4f :: self
-> Maybe WebGLUniformLocation
-> GLclampf
-> GLclampf
-> GLclampf
-> GLclampf
-> m ()
uniform4f self
self Maybe WebGLUniformLocation
location GLclampf
x GLclampf
y GLclampf
z GLclampf
w
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform4f"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
z, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
w]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform1i Mozilla WebGLRenderingContextBase.uniform1i documentation> 
uniform1i ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLUniformLocation -> GLint -> m ()
uniform1i :: self -> Maybe WebGLUniformLocation -> GLint -> m ()
uniform1i self
self Maybe WebGLUniformLocation
location GLint
x
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform1i"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform2i Mozilla WebGLRenderingContextBase.uniform2i documentation> 
uniform2i ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> Maybe WebGLUniformLocation -> GLint -> GLint -> m ()
uniform2i :: self -> Maybe WebGLUniformLocation -> GLint -> GLint -> m ()
uniform2i self
self Maybe WebGLUniformLocation
location GLint
x GLint
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform2i"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform3i Mozilla WebGLRenderingContextBase.uniform3i documentation> 
uniform3i ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self ->
              Maybe WebGLUniformLocation -> GLint -> GLint -> GLint -> m ()
uniform3i :: self
-> Maybe WebGLUniformLocation -> GLint -> GLint -> GLint -> m ()
uniform3i self
self Maybe WebGLUniformLocation
location GLint
x GLint
y GLint
z
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform3i"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
z]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform4i Mozilla WebGLRenderingContextBase.uniform4i documentation> 
uniform4i ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self ->
              Maybe WebGLUniformLocation ->
                GLint -> GLint -> GLint -> GLint -> m ()
uniform4i :: self
-> Maybe WebGLUniformLocation
-> GLint
-> GLint
-> GLint
-> GLint
-> m ()
uniform4i self
self Maybe WebGLUniformLocation
location GLint
x GLint
y GLint
z GLint
w
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform4i"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
z, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
w]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform1fv Mozilla WebGLRenderingContextBase.uniform1fv documentation> 
uniform1fv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsFloat32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform1fv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform1fv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform1fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform2fv Mozilla WebGLRenderingContextBase.uniform2fv documentation> 
uniform2fv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsFloat32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform2fv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform2fv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform2fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform3fv Mozilla WebGLRenderingContextBase.uniform3fv documentation> 
uniform3fv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsFloat32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform3fv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform3fv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform3fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform4fv Mozilla WebGLRenderingContextBase.uniform4fv documentation> 
uniform4fv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsFloat32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform4fv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform4fv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform4fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform1iv Mozilla WebGLRenderingContextBase.uniform1iv documentation> 
uniform1iv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsInt32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform1iv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform1iv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform1iv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform2iv Mozilla WebGLRenderingContextBase.uniform2iv documentation> 
uniform2iv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsInt32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform2iv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform2iv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform2iv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform3iv Mozilla WebGLRenderingContextBase.uniform3iv documentation> 
uniform3iv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsInt32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform3iv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform3iv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform3iv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniform4iv Mozilla WebGLRenderingContextBase.uniform4iv documentation> 
uniform4iv ::
           (MonadDOM m, IsWebGLRenderingContextBase self, IsInt32List v) =>
             self -> Maybe WebGLUniformLocation -> v -> m ()
uniform4iv :: self -> Maybe WebGLUniformLocation -> v -> m ()
uniform4iv self
self Maybe WebGLUniformLocation
location v
v
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniform4iv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, v -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal v
v]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniformMatrix2fv Mozilla WebGLRenderingContextBase.uniformMatrix2fv documentation> 
uniformMatrix2fv ::
                 (MonadDOM m, IsWebGLRenderingContextBase self,
                  IsFloat32List array) =>
                   self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix2fv :: self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix2fv self
self Maybe WebGLUniformLocation
location GLboolean
transpose array
array
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniformMatrix2fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
transpose, array -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal array
array]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniformMatrix3fv Mozilla WebGLRenderingContextBase.uniformMatrix3fv documentation> 
uniformMatrix3fv ::
                 (MonadDOM m, IsWebGLRenderingContextBase self,
                  IsFloat32List array) =>
                   self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix3fv :: self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix3fv self
self Maybe WebGLUniformLocation
location GLboolean
transpose array
array
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniformMatrix3fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
transpose, array -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal array
array]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.uniformMatrix4fv Mozilla WebGLRenderingContextBase.uniformMatrix4fv documentation> 
uniformMatrix4fv ::
                 (MonadDOM m, IsWebGLRenderingContextBase self,
                  IsFloat32List array) =>
                   self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix4fv :: self -> Maybe WebGLUniformLocation -> GLboolean -> array -> m ()
uniformMatrix4fv self
self Maybe WebGLUniformLocation
location GLboolean
transpose array
array
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"uniformMatrix4fv"
            [Maybe WebGLUniformLocation -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLUniformLocation
location, GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
transpose, array -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal array
array]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.useProgram Mozilla WebGLRenderingContextBase.useProgram documentation> 
useProgram ::
           (MonadDOM m, IsWebGLRenderingContextBase self) =>
             self -> Maybe WebGLProgram -> m ()
useProgram :: self -> Maybe WebGLProgram -> m ()
useProgram self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"useProgram"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.validateProgram Mozilla WebGLRenderingContextBase.validateProgram documentation> 
validateProgram ::
                (MonadDOM m, IsWebGLRenderingContextBase self) =>
                  self -> Maybe WebGLProgram -> m ()
validateProgram :: self -> Maybe WebGLProgram -> m ()
validateProgram self
self Maybe WebGLProgram
program
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"validateProgram"
            [Maybe WebGLProgram -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe WebGLProgram
program]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib1f Mozilla WebGLRenderingContextBase.vertexAttrib1f documentation> 
vertexAttrib1f ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLuint -> GLfloat -> m ()
vertexAttrib1f :: self -> GLenum -> GLclampf -> m ()
vertexAttrib1f self
self GLenum
index GLclampf
x
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib1f"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib2f Mozilla WebGLRenderingContextBase.vertexAttrib2f documentation> 
vertexAttrib2f ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLuint -> GLfloat -> GLfloat -> m ()
vertexAttrib2f :: self -> GLenum -> GLclampf -> GLclampf -> m ()
vertexAttrib2f self
self GLenum
index GLclampf
x GLclampf
y
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib2f"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib3f Mozilla WebGLRenderingContextBase.vertexAttrib3f documentation> 
vertexAttrib3f ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
vertexAttrib3f :: self -> GLenum -> GLclampf -> GLclampf -> GLclampf -> m ()
vertexAttrib3f self
self GLenum
index GLclampf
x GLclampf
y GLclampf
z
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib3f"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
z]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib4f Mozilla WebGLRenderingContextBase.vertexAttrib4f documentation> 
vertexAttrib4f ::
               (MonadDOM m, IsWebGLRenderingContextBase self) =>
                 self -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
vertexAttrib4f :: self
-> GLenum -> GLclampf -> GLclampf -> GLclampf -> GLclampf -> m ()
vertexAttrib4f self
self GLenum
index GLclampf
x GLclampf
y GLclampf
z GLclampf
w
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib4f"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
x, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
y, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
z, GLclampf -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLclampf
w]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib1fv Mozilla WebGLRenderingContextBase.vertexAttrib1fv documentation> 
vertexAttrib1fv ::
                (MonadDOM m, IsWebGLRenderingContextBase self,
                 IsFloat32List values) =>
                  self -> GLuint -> values -> m ()
vertexAttrib1fv :: self -> GLenum -> values -> m ()
vertexAttrib1fv self
self GLenum
index values
values
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib1fv"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, values -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal values
values]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib2fv Mozilla WebGLRenderingContextBase.vertexAttrib2fv documentation> 
vertexAttrib2fv ::
                (MonadDOM m, IsWebGLRenderingContextBase self,
                 IsFloat32List values) =>
                  self -> GLuint -> values -> m ()
vertexAttrib2fv :: self -> GLenum -> values -> m ()
vertexAttrib2fv self
self GLenum
index values
values
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib2fv"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, values -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal values
values]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib3fv Mozilla WebGLRenderingContextBase.vertexAttrib3fv documentation> 
vertexAttrib3fv ::
                (MonadDOM m, IsWebGLRenderingContextBase self,
                 IsFloat32List values) =>
                  self -> GLuint -> values -> m ()
vertexAttrib3fv :: self -> GLenum -> values -> m ()
vertexAttrib3fv self
self GLenum
index values
values
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib3fv"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, values -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal values
values]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttrib4fv Mozilla WebGLRenderingContextBase.vertexAttrib4fv documentation> 
vertexAttrib4fv ::
                (MonadDOM m, IsWebGLRenderingContextBase self,
                 IsFloat32List values) =>
                  self -> GLuint -> values -> m ()
vertexAttrib4fv :: self -> GLenum -> values -> m ()
vertexAttrib4fv self
self GLenum
index values
values
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttrib4fv"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
index, values -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal values
values]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.vertexAttribPointer Mozilla WebGLRenderingContextBase.vertexAttribPointer documentation> 
vertexAttribPointer ::
                    (MonadDOM m, IsWebGLRenderingContextBase self) =>
                      self ->
                        GLuint ->
                          GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> m ()
vertexAttribPointer :: self
-> GLenum
-> GLint
-> GLenum
-> GLboolean
-> GLint
-> GLsizeiptr
-> m ()
vertexAttribPointer self
self GLenum
indx GLint
size GLenum
type' GLboolean
normalized GLint
stride GLsizeiptr
offset
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"vertexAttribPointer"
            [GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
indx, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
size, GLenum -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLenum
type', GLboolean -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLboolean
normalized,
             GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
stride, GLsizeiptr -> JSM JSVal
forall a. Integral a => a -> JSM JSVal
integralToDoubleToJSVal GLsizeiptr
offset]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.viewport Mozilla WebGLRenderingContextBase.viewport documentation> 
viewport ::
         (MonadDOM m, IsWebGLRenderingContextBase self) =>
           self -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
viewport :: self -> GLint -> GLint -> GLint -> GLint -> m ()
viewport self
self GLint
x GLint
y GLint
width GLint
height
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         ((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char] -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf [Char]
"viewport"
            [GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
x, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
y, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
width, GLint -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal GLint
height]))
pattern $bDEPTH_BUFFER_BIT :: a
$mDEPTH_BUFFER_BIT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_BUFFER_BIT = 256
pattern $bSTENCIL_BUFFER_BIT :: a
$mSTENCIL_BUFFER_BIT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BUFFER_BIT = 1024
pattern $bCOLOR_BUFFER_BIT :: a
$mCOLOR_BUFFER_BIT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COLOR_BUFFER_BIT = 16384
pattern $bPOINTS :: a
$mPOINTS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
POINTS = 0
pattern $bLINES :: a
$mLINES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINES = 1
pattern $bLINE_LOOP :: a
$mLINE_LOOP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINE_LOOP = 2
pattern $bLINE_STRIP :: a
$mLINE_STRIP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINE_STRIP = 3
pattern $bTRIANGLES :: a
$mTRIANGLES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TRIANGLES = 4
pattern $bTRIANGLE_STRIP :: a
$mTRIANGLE_STRIP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TRIANGLE_STRIP = 5
pattern $bTRIANGLE_FAN :: a
$mTRIANGLE_FAN :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TRIANGLE_FAN = 6
pattern $bZERO :: a
$mZERO :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ZERO = 0
pattern $bONE :: a
$mONE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE = 1
pattern $bSRC_COLOR :: a
$mSRC_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SRC_COLOR = 768
pattern $bONE_MINUS_SRC_COLOR :: a
$mONE_MINUS_SRC_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_SRC_COLOR = 769
pattern $bSRC_ALPHA :: a
$mSRC_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SRC_ALPHA = 770
pattern $bONE_MINUS_SRC_ALPHA :: a
$mONE_MINUS_SRC_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_SRC_ALPHA = 771
pattern $bDST_ALPHA :: a
$mDST_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DST_ALPHA = 772
pattern $bONE_MINUS_DST_ALPHA :: a
$mONE_MINUS_DST_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_DST_ALPHA = 773
pattern $bDST_COLOR :: a
$mDST_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DST_COLOR = 774
pattern $bONE_MINUS_DST_COLOR :: a
$mONE_MINUS_DST_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_DST_COLOR = 775
pattern $bSRC_ALPHA_SATURATE :: a
$mSRC_ALPHA_SATURATE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SRC_ALPHA_SATURATE = 776
pattern $bFUNC_ADD :: a
$mFUNC_ADD :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FUNC_ADD = 32774
pattern $bBLEND_EQUATION :: a
$mBLEND_EQUATION :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_EQUATION = 32777
pattern $bBLEND_EQUATION_RGB :: a
$mBLEND_EQUATION_RGB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_EQUATION_RGB = 32777
pattern $bBLEND_EQUATION_ALPHA :: a
$mBLEND_EQUATION_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_EQUATION_ALPHA = 34877
pattern $bFUNC_SUBTRACT :: a
$mFUNC_SUBTRACT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FUNC_SUBTRACT = 32778
pattern $bFUNC_REVERSE_SUBTRACT :: a
$mFUNC_REVERSE_SUBTRACT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FUNC_REVERSE_SUBTRACT = 32779
pattern $bBLEND_DST_RGB :: a
$mBLEND_DST_RGB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_DST_RGB = 32968
pattern $bBLEND_SRC_RGB :: a
$mBLEND_SRC_RGB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_SRC_RGB = 32969
pattern $bBLEND_DST_ALPHA :: a
$mBLEND_DST_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_DST_ALPHA = 32970
pattern $bBLEND_SRC_ALPHA :: a
$mBLEND_SRC_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_SRC_ALPHA = 32971
pattern $bCONSTANT_COLOR :: a
$mCONSTANT_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CONSTANT_COLOR = 32769
pattern $bONE_MINUS_CONSTANT_COLOR :: a
$mONE_MINUS_CONSTANT_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_CONSTANT_COLOR = 32770
pattern $bCONSTANT_ALPHA :: a
$mCONSTANT_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CONSTANT_ALPHA = 32771
pattern $bONE_MINUS_CONSTANT_ALPHA :: a
$mONE_MINUS_CONSTANT_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ONE_MINUS_CONSTANT_ALPHA = 32772
pattern $bBLEND_COLOR :: a
$mBLEND_COLOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND_COLOR = 32773
pattern $bARRAY_BUFFER :: a
$mARRAY_BUFFER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ARRAY_BUFFER = 34962
pattern $bELEMENT_ARRAY_BUFFER :: a
$mELEMENT_ARRAY_BUFFER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ELEMENT_ARRAY_BUFFER = 34963
pattern $bARRAY_BUFFER_BINDING :: a
$mARRAY_BUFFER_BINDING :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ARRAY_BUFFER_BINDING = 34964
pattern $bELEMENT_ARRAY_BUFFER_BINDING :: a
$mELEMENT_ARRAY_BUFFER_BINDING :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ELEMENT_ARRAY_BUFFER_BINDING = 34965
pattern $bSTREAM_DRAW :: a
$mSTREAM_DRAW :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STREAM_DRAW = 35040
pattern $bSTATIC_DRAW :: a
$mSTATIC_DRAW :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STATIC_DRAW = 35044
pattern $bDYNAMIC_DRAW :: a
$mDYNAMIC_DRAW :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DYNAMIC_DRAW = 35048
pattern $bBUFFER_SIZE :: a
$mBUFFER_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BUFFER_SIZE = 34660
pattern $bBUFFER_USAGE :: a
$mBUFFER_USAGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BUFFER_USAGE = 34661
pattern $bCURRENT_VERTEX_ATTRIB :: a
$mCURRENT_VERTEX_ATTRIB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CURRENT_VERTEX_ATTRIB = 34342
pattern $bFRONT :: a
$mFRONT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRONT = 1028
pattern $bBACK :: a
$mBACK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BACK = 1029
pattern $bFRONT_AND_BACK :: a
$mFRONT_AND_BACK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRONT_AND_BACK = 1032
pattern $bTEXTURE_2D :: a
$mTEXTURE_2D :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_2D = 3553
pattern $bCULL_FACE :: a
$mCULL_FACE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CULL_FACE = 2884
pattern $bBLEND :: a
$mBLEND :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLEND = 3042
pattern $bDITHER :: a
$mDITHER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DITHER = 3024
pattern $bSTENCIL_TEST :: a
$mSTENCIL_TEST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_TEST = 2960
pattern $bDEPTH_TEST :: a
$mDEPTH_TEST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_TEST = 2929
pattern $bSCISSOR_TEST :: a
$mSCISSOR_TEST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SCISSOR_TEST = 3089
pattern $bPOLYGON_OFFSET_FILL :: a
$mPOLYGON_OFFSET_FILL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
POLYGON_OFFSET_FILL = 32823
pattern $bSAMPLE_ALPHA_TO_COVERAGE :: a
$mSAMPLE_ALPHA_TO_COVERAGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLE_ALPHA_TO_COVERAGE = 32926
pattern $bSAMPLE_COVERAGE :: a
$mSAMPLE_COVERAGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLE_COVERAGE = 32928
pattern $bNO_ERROR :: a
$mNO_ERROR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NO_ERROR = 0
pattern $bINVALID_ENUM :: a
$mINVALID_ENUM :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INVALID_ENUM = 1280
pattern $bINVALID_VALUE :: a
$mINVALID_VALUE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INVALID_VALUE = 1281
pattern $bINVALID_OPERATION :: a
$mINVALID_OPERATION :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INVALID_OPERATION = 1282
pattern $bOUT_OF_MEMORY :: a
$mOUT_OF_MEMORY :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
OUT_OF_MEMORY = 1285
pattern $bCW :: a
$mCW :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CW = 2304
pattern $bCCW :: a
$mCCW :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CCW = 2305
pattern $bLINE_WIDTH :: a
$mLINE_WIDTH :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINE_WIDTH = 2849
pattern $bALIASED_POINT_SIZE_RANGE :: a
$mALIASED_POINT_SIZE_RANGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ALIASED_POINT_SIZE_RANGE = 33901
pattern $bALIASED_LINE_WIDTH_RANGE :: a
$mALIASED_LINE_WIDTH_RANGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ALIASED_LINE_WIDTH_RANGE = 33902
pattern $bCULL_FACE_MODE :: a
$mCULL_FACE_MODE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CULL_FACE_MODE = 2885
pattern $bFRONT_FACE :: a
$mFRONT_FACE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRONT_FACE = 2886
pattern $bDEPTH_RANGE :: a
$mDEPTH_RANGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_RANGE = 2928
pattern $bDEPTH_WRITEMASK :: a
$mDEPTH_WRITEMASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_WRITEMASK = 2930
pattern $bDEPTH_CLEAR_VALUE :: a
$mDEPTH_CLEAR_VALUE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_CLEAR_VALUE = 2931
pattern $bDEPTH_FUNC :: a
$mDEPTH_FUNC :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_FUNC = 2932
pattern $bSTENCIL_CLEAR_VALUE :: a
$mSTENCIL_CLEAR_VALUE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_CLEAR_VALUE = 2961
pattern $bSTENCIL_FUNC :: a
$mSTENCIL_FUNC :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_FUNC = 2962
pattern $bSTENCIL_FAIL :: a
$mSTENCIL_FAIL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_FAIL = 2964
pattern $bSTENCIL_PASS_DEPTH_FAIL :: a
$mSTENCIL_PASS_DEPTH_FAIL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_PASS_DEPTH_FAIL = 2965
pattern $bSTENCIL_PASS_DEPTH_PASS :: a
$mSTENCIL_PASS_DEPTH_PASS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_PASS_DEPTH_PASS = 2966
pattern $bSTENCIL_REF :: a
$mSTENCIL_REF :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_REF = 2967
pattern $bSTENCIL_VALUE_MASK :: a
$mSTENCIL_VALUE_MASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_VALUE_MASK = 2963
pattern $bSTENCIL_WRITEMASK :: a
$mSTENCIL_WRITEMASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_WRITEMASK = 2968
pattern $bSTENCIL_BACK_FUNC :: a
$mSTENCIL_BACK_FUNC :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_FUNC = 34816
pattern $bSTENCIL_BACK_FAIL :: a
$mSTENCIL_BACK_FAIL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_FAIL = 34817
pattern $bSTENCIL_BACK_PASS_DEPTH_FAIL :: a
$mSTENCIL_BACK_PASS_DEPTH_FAIL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_PASS_DEPTH_FAIL = 34818
pattern $bSTENCIL_BACK_PASS_DEPTH_PASS :: a
$mSTENCIL_BACK_PASS_DEPTH_PASS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_PASS_DEPTH_PASS = 34819
pattern $bSTENCIL_BACK_REF :: a
$mSTENCIL_BACK_REF :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_REF = 36003
pattern $bSTENCIL_BACK_VALUE_MASK :: a
$mSTENCIL_BACK_VALUE_MASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_VALUE_MASK = 36004
pattern $bSTENCIL_BACK_WRITEMASK :: a
$mSTENCIL_BACK_WRITEMASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BACK_WRITEMASK = 36005
pattern $bVIEWPORT :: a
$mVIEWPORT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VIEWPORT = 2978
pattern $bSCISSOR_BOX :: a
$mSCISSOR_BOX :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SCISSOR_BOX = 3088
pattern $bCOLOR_CLEAR_VALUE :: a
$mCOLOR_CLEAR_VALUE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COLOR_CLEAR_VALUE = 3106
pattern $bCOLOR_WRITEMASK :: a
$mCOLOR_WRITEMASK :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COLOR_WRITEMASK = 3107
pattern $bUNPACK_ALIGNMENT :: a
$mUNPACK_ALIGNMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNPACK_ALIGNMENT = 3317
pattern $bPACK_ALIGNMENT :: a
$mPACK_ALIGNMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
PACK_ALIGNMENT = 3333
pattern $bMAX_TEXTURE_SIZE :: a
$mMAX_TEXTURE_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_TEXTURE_SIZE = 3379
pattern $bMAX_VIEWPORT_DIMS :: a
$mMAX_VIEWPORT_DIMS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_VIEWPORT_DIMS = 3386
pattern $bSUBPIXEL_BITS :: a
$mSUBPIXEL_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SUBPIXEL_BITS = 3408
pattern $bRED_BITS :: a
$mRED_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RED_BITS = 3410
pattern $bGREEN_BITS :: a
$mGREEN_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GREEN_BITS = 3411
pattern $bBLUE_BITS :: a
$mBLUE_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BLUE_BITS = 3412
pattern $bALPHA_BITS :: a
$mALPHA_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ALPHA_BITS = 3413
pattern $bDEPTH_BITS :: a
$mDEPTH_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_BITS = 3414
pattern $bSTENCIL_BITS :: a
$mSTENCIL_BITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_BITS = 3415
pattern $bPOLYGON_OFFSET_UNITS :: a
$mPOLYGON_OFFSET_UNITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
POLYGON_OFFSET_UNITS = 10752
pattern $bPOLYGON_OFFSET_FACTOR :: a
$mPOLYGON_OFFSET_FACTOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
POLYGON_OFFSET_FACTOR = 32824
pattern $bTEXTURE_BINDING_2D :: a
$mTEXTURE_BINDING_2D :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_BINDING_2D = 32873
pattern $bSAMPLE_BUFFERS :: a
$mSAMPLE_BUFFERS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLE_BUFFERS = 32936
pattern $bSAMPLES :: a
$mSAMPLES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLES = 32937
pattern $bSAMPLE_COVERAGE_VALUE :: a
$mSAMPLE_COVERAGE_VALUE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLE_COVERAGE_VALUE = 32938
pattern $bSAMPLE_COVERAGE_INVERT :: a
$mSAMPLE_COVERAGE_INVERT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLE_COVERAGE_INVERT = 32939
pattern $bCOMPRESSED_TEXTURE_FORMATS :: a
$mCOMPRESSED_TEXTURE_FORMATS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COMPRESSED_TEXTURE_FORMATS = 34467
pattern $bDONT_CARE :: a
$mDONT_CARE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DONT_CARE = 4352
pattern $bFASTEST :: a
$mFASTEST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FASTEST = 4353
pattern $bNICEST :: a
$mNICEST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NICEST = 4354
pattern $bGENERATE_MIPMAP_HINT :: a
$mGENERATE_MIPMAP_HINT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GENERATE_MIPMAP_HINT = 33170
pattern $bBYTE :: a
$mBYTE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BYTE = 5120
pattern $bUNSIGNED_BYTE :: a
$mUNSIGNED_BYTE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_BYTE = 5121
pattern $bSHORT :: a
$mSHORT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SHORT = 5122
pattern $bUNSIGNED_SHORT :: a
$mUNSIGNED_SHORT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_SHORT = 5123
pattern $bINT :: a
$mINT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INT = 5124
pattern $bUNSIGNED_INT :: a
$mUNSIGNED_INT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_INT = 5125
pattern $bFLOAT :: a
$mFLOAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT = 5126
pattern $bDEPTH_COMPONENT :: a
$mDEPTH_COMPONENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_COMPONENT = 6402
pattern $bALPHA :: a
$mALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ALPHA = 6406
pattern $bRGB :: a
$mRGB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RGB = 6407
pattern $bRGBA :: a
$mRGBA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RGBA = 6408
pattern $bLUMINANCE :: a
$mLUMINANCE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LUMINANCE = 6409
pattern $bLUMINANCE_ALPHA :: a
$mLUMINANCE_ALPHA :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LUMINANCE_ALPHA = 6410
pattern $bUNSIGNED_SHORT_4_4_4_4 :: a
$mUNSIGNED_SHORT_4_4_4_4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_SHORT_4_4_4_4 = 32819
pattern $bUNSIGNED_SHORT_5_5_5_1 :: a
$mUNSIGNED_SHORT_5_5_5_1 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_SHORT_5_5_5_1 = 32820
pattern $bUNSIGNED_SHORT_5_6_5 :: a
$mUNSIGNED_SHORT_5_6_5 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNSIGNED_SHORT_5_6_5 = 33635
pattern $bFRAGMENT_SHADER :: a
$mFRAGMENT_SHADER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAGMENT_SHADER = 35632
pattern $bVERTEX_SHADER :: a
$mVERTEX_SHADER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_SHADER = 35633
pattern $bMAX_VERTEX_ATTRIBS :: a
$mMAX_VERTEX_ATTRIBS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_VERTEX_ATTRIBS = 34921
pattern $bMAX_VERTEX_UNIFORM_VECTORS :: a
$mMAX_VERTEX_UNIFORM_VECTORS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_VERTEX_UNIFORM_VECTORS = 36347
pattern $bMAX_VARYING_VECTORS :: a
$mMAX_VARYING_VECTORS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_VARYING_VECTORS = 36348
pattern $bMAX_COMBINED_TEXTURE_IMAGE_UNITS :: a
$mMAX_COMBINED_TEXTURE_IMAGE_UNITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_COMBINED_TEXTURE_IMAGE_UNITS = 35661
pattern $bMAX_VERTEX_TEXTURE_IMAGE_UNITS :: a
$mMAX_VERTEX_TEXTURE_IMAGE_UNITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_VERTEX_TEXTURE_IMAGE_UNITS = 35660
pattern $bMAX_TEXTURE_IMAGE_UNITS :: a
$mMAX_TEXTURE_IMAGE_UNITS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_TEXTURE_IMAGE_UNITS = 34930
pattern $bMAX_FRAGMENT_UNIFORM_VECTORS :: a
$mMAX_FRAGMENT_UNIFORM_VECTORS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_FRAGMENT_UNIFORM_VECTORS = 36349
pattern $bSHADER_TYPE :: a
$mSHADER_TYPE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SHADER_TYPE = 35663
pattern $bDELETE_STATUS :: a
$mDELETE_STATUS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DELETE_STATUS = 35712
pattern $bLINK_STATUS :: a
$mLINK_STATUS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINK_STATUS = 35714
pattern $bVALIDATE_STATUS :: a
$mVALIDATE_STATUS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VALIDATE_STATUS = 35715
pattern $bATTACHED_SHADERS :: a
$mATTACHED_SHADERS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ATTACHED_SHADERS = 35717
pattern $bACTIVE_UNIFORMS :: a
$mACTIVE_UNIFORMS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ACTIVE_UNIFORMS = 35718
pattern $bACTIVE_ATTRIBUTES :: a
$mACTIVE_ATTRIBUTES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ACTIVE_ATTRIBUTES = 35721
pattern $bSHADING_LANGUAGE_VERSION :: a
$mSHADING_LANGUAGE_VERSION :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SHADING_LANGUAGE_VERSION = 35724
pattern $bCURRENT_PROGRAM :: a
$mCURRENT_PROGRAM :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CURRENT_PROGRAM = 35725
pattern $bNEVER :: a
$mNEVER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NEVER = 512
pattern $bLESS :: a
$mLESS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LESS = 513
pattern $bEQUAL :: a
$mEQUAL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
EQUAL = 514
pattern $bLEQUAL :: a
$mLEQUAL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LEQUAL = 515
pattern $bGREATER :: a
$mGREATER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GREATER = 516
pattern $bNOTEQUAL :: a
$mNOTEQUAL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NOTEQUAL = 517
pattern $bGEQUAL :: a
$mGEQUAL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GEQUAL = 518
pattern $bALWAYS :: a
$mALWAYS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ALWAYS = 519
pattern $bKEEP :: a
$mKEEP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
KEEP = 7680
pattern $bREPLACE :: a
$mREPLACE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
REPLACE = 7681
pattern $bINCR :: a
$mINCR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INCR = 7682
pattern $bDECR :: a
$mDECR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DECR = 7683
pattern $bINVERT :: a
$mINVERT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INVERT = 5386
pattern $bINCR_WRAP :: a
$mINCR_WRAP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INCR_WRAP = 34055
pattern $bDECR_WRAP :: a
$mDECR_WRAP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DECR_WRAP = 34056
pattern $bVENDOR :: a
$mVENDOR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VENDOR = 7936
pattern $bRENDERER :: a
$mRENDERER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERER = 7937
pattern $bVERSION :: a
$mVERSION :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERSION = 7938
pattern $bNEAREST :: a
$mNEAREST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NEAREST = 9728
pattern $bLINEAR :: a
$mLINEAR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINEAR = 9729
pattern $bNEAREST_MIPMAP_NEAREST :: a
$mNEAREST_MIPMAP_NEAREST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NEAREST_MIPMAP_NEAREST = 9984
pattern $bLINEAR_MIPMAP_NEAREST :: a
$mLINEAR_MIPMAP_NEAREST :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINEAR_MIPMAP_NEAREST = 9985
pattern $bNEAREST_MIPMAP_LINEAR :: a
$mNEAREST_MIPMAP_LINEAR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NEAREST_MIPMAP_LINEAR = 9986
pattern $bLINEAR_MIPMAP_LINEAR :: a
$mLINEAR_MIPMAP_LINEAR :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LINEAR_MIPMAP_LINEAR = 9987
pattern $bTEXTURE_MAG_FILTER :: a
$mTEXTURE_MAG_FILTER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_MAG_FILTER = 10240
pattern $bTEXTURE_MIN_FILTER :: a
$mTEXTURE_MIN_FILTER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_MIN_FILTER = 10241
pattern $bTEXTURE_WRAP_S :: a
$mTEXTURE_WRAP_S :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_WRAP_S = 10242
pattern $bTEXTURE_WRAP_T :: a
$mTEXTURE_WRAP_T :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_WRAP_T = 10243
pattern $bTEXTURE :: a
$mTEXTURE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE = 5890
pattern $bTEXTURE_CUBE_MAP :: a
$mTEXTURE_CUBE_MAP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP = 34067
pattern $bTEXTURE_BINDING_CUBE_MAP :: a
$mTEXTURE_BINDING_CUBE_MAP :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_BINDING_CUBE_MAP = 34068
pattern $bTEXTURE_CUBE_MAP_POSITIVE_X :: a
$mTEXTURE_CUBE_MAP_POSITIVE_X :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_POSITIVE_X = 34069
pattern $bTEXTURE_CUBE_MAP_NEGATIVE_X :: a
$mTEXTURE_CUBE_MAP_NEGATIVE_X :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_NEGATIVE_X = 34070
pattern $bTEXTURE_CUBE_MAP_POSITIVE_Y :: a
$mTEXTURE_CUBE_MAP_POSITIVE_Y :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_POSITIVE_Y = 34071
pattern $bTEXTURE_CUBE_MAP_NEGATIVE_Y :: a
$mTEXTURE_CUBE_MAP_NEGATIVE_Y :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_NEGATIVE_Y = 34072
pattern $bTEXTURE_CUBE_MAP_POSITIVE_Z :: a
$mTEXTURE_CUBE_MAP_POSITIVE_Z :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_POSITIVE_Z = 34073
pattern $bTEXTURE_CUBE_MAP_NEGATIVE_Z :: a
$mTEXTURE_CUBE_MAP_NEGATIVE_Z :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE_CUBE_MAP_NEGATIVE_Z = 34074
pattern $bMAX_CUBE_MAP_TEXTURE_SIZE :: a
$mMAX_CUBE_MAP_TEXTURE_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_CUBE_MAP_TEXTURE_SIZE = 34076
pattern $bTEXTURE0 :: a
$mTEXTURE0 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE0 = 33984
pattern $bTEXTURE1 :: a
$mTEXTURE1 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE1 = 33985
pattern $bTEXTURE2 :: a
$mTEXTURE2 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE2 = 33986
pattern $bTEXTURE3 :: a
$mTEXTURE3 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE3 = 33987
pattern $bTEXTURE4 :: a
$mTEXTURE4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE4 = 33988
pattern $bTEXTURE5 :: a
$mTEXTURE5 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE5 = 33989
pattern $bTEXTURE6 :: a
$mTEXTURE6 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE6 = 33990
pattern $bTEXTURE7 :: a
$mTEXTURE7 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE7 = 33991
pattern $bTEXTURE8 :: a
$mTEXTURE8 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE8 = 33992
pattern $bTEXTURE9 :: a
$mTEXTURE9 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE9 = 33993
pattern $bTEXTURE10 :: a
$mTEXTURE10 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE10 = 33994
pattern $bTEXTURE11 :: a
$mTEXTURE11 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE11 = 33995
pattern $bTEXTURE12 :: a
$mTEXTURE12 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE12 = 33996
pattern $bTEXTURE13 :: a
$mTEXTURE13 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE13 = 33997
pattern $bTEXTURE14 :: a
$mTEXTURE14 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE14 = 33998
pattern $bTEXTURE15 :: a
$mTEXTURE15 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE15 = 33999
pattern $bTEXTURE16 :: a
$mTEXTURE16 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE16 = 34000
pattern $bTEXTURE17 :: a
$mTEXTURE17 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE17 = 34001
pattern $bTEXTURE18 :: a
$mTEXTURE18 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE18 = 34002
pattern $bTEXTURE19 :: a
$mTEXTURE19 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE19 = 34003
pattern $bTEXTURE20 :: a
$mTEXTURE20 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE20 = 34004
pattern $bTEXTURE21 :: a
$mTEXTURE21 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE21 = 34005
pattern $bTEXTURE22 :: a
$mTEXTURE22 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE22 = 34006
pattern $bTEXTURE23 :: a
$mTEXTURE23 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE23 = 34007
pattern $bTEXTURE24 :: a
$mTEXTURE24 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE24 = 34008
pattern $bTEXTURE25 :: a
$mTEXTURE25 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE25 = 34009
pattern $bTEXTURE26 :: a
$mTEXTURE26 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE26 = 34010
pattern $bTEXTURE27 :: a
$mTEXTURE27 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE27 = 34011
pattern $bTEXTURE28 :: a
$mTEXTURE28 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE28 = 34012
pattern $bTEXTURE29 :: a
$mTEXTURE29 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE29 = 34013
pattern $bTEXTURE30 :: a
$mTEXTURE30 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE30 = 34014
pattern $bTEXTURE31 :: a
$mTEXTURE31 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
TEXTURE31 = 34015
pattern $bACTIVE_TEXTURE :: a
$mACTIVE_TEXTURE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
ACTIVE_TEXTURE = 34016
pattern $bREPEAT :: a
$mREPEAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
REPEAT = 10497
pattern $bCLAMP_TO_EDGE :: a
$mCLAMP_TO_EDGE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CLAMP_TO_EDGE = 33071
pattern $bMIRRORED_REPEAT :: a
$mMIRRORED_REPEAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MIRRORED_REPEAT = 33648
pattern $bFLOAT_VEC2 :: a
$mFLOAT_VEC2 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_VEC2 = 35664
pattern $bFLOAT_VEC3 :: a
$mFLOAT_VEC3 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_VEC3 = 35665
pattern $bFLOAT_VEC4 :: a
$mFLOAT_VEC4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_VEC4 = 35666
pattern $bINT_VEC2 :: a
$mINT_VEC2 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INT_VEC2 = 35667
pattern $bINT_VEC3 :: a
$mINT_VEC3 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INT_VEC3 = 35668
pattern $bINT_VEC4 :: a
$mINT_VEC4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INT_VEC4 = 35669
pattern $bBOOL :: a
$mBOOL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BOOL = 35670
pattern $bBOOL_VEC2 :: a
$mBOOL_VEC2 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BOOL_VEC2 = 35671
pattern $bBOOL_VEC3 :: a
$mBOOL_VEC3 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BOOL_VEC3 = 35672
pattern $bBOOL_VEC4 :: a
$mBOOL_VEC4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BOOL_VEC4 = 35673
pattern $bFLOAT_MAT2 :: a
$mFLOAT_MAT2 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_MAT2 = 35674
pattern $bFLOAT_MAT3 :: a
$mFLOAT_MAT3 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_MAT3 = 35675
pattern $bFLOAT_MAT4 :: a
$mFLOAT_MAT4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FLOAT_MAT4 = 35676
pattern $bSAMPLER_2D :: a
$mSAMPLER_2D :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLER_2D = 35678
pattern $bSAMPLER_CUBE :: a
$mSAMPLER_CUBE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
SAMPLER_CUBE = 35680
pattern $bVERTEX_ATTRIB_ARRAY_ENABLED :: a
$mVERTEX_ATTRIB_ARRAY_ENABLED :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_ENABLED = 34338
pattern $bVERTEX_ATTRIB_ARRAY_SIZE :: a
$mVERTEX_ATTRIB_ARRAY_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_SIZE = 34339
pattern $bVERTEX_ATTRIB_ARRAY_STRIDE :: a
$mVERTEX_ATTRIB_ARRAY_STRIDE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_STRIDE = 34340
pattern $bVERTEX_ATTRIB_ARRAY_TYPE :: a
$mVERTEX_ATTRIB_ARRAY_TYPE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_TYPE = 34341
pattern $bVERTEX_ATTRIB_ARRAY_NORMALIZED :: a
$mVERTEX_ATTRIB_ARRAY_NORMALIZED :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_NORMALIZED = 34922
pattern $bVERTEX_ATTRIB_ARRAY_POINTER :: a
$mVERTEX_ATTRIB_ARRAY_POINTER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_POINTER = 34373
pattern $bVERTEX_ATTRIB_ARRAY_BUFFER_BINDING :: a
$mVERTEX_ATTRIB_ARRAY_BUFFER_BINDING :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 34975
pattern $bIMPLEMENTATION_COLOR_READ_TYPE :: a
$mIMPLEMENTATION_COLOR_READ_TYPE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
IMPLEMENTATION_COLOR_READ_TYPE = 35738
pattern $bIMPLEMENTATION_COLOR_READ_FORMAT :: a
$mIMPLEMENTATION_COLOR_READ_FORMAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
IMPLEMENTATION_COLOR_READ_FORMAT = 35739
pattern $bCOMPILE_STATUS :: a
$mCOMPILE_STATUS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COMPILE_STATUS = 35713
pattern $bLOW_FLOAT :: a
$mLOW_FLOAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LOW_FLOAT = 36336
pattern $bMEDIUM_FLOAT :: a
$mMEDIUM_FLOAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MEDIUM_FLOAT = 36337
pattern $bHIGH_FLOAT :: a
$mHIGH_FLOAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
HIGH_FLOAT = 36338
pattern $bLOW_INT :: a
$mLOW_INT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
LOW_INT = 36339
pattern $bMEDIUM_INT :: a
$mMEDIUM_INT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MEDIUM_INT = 36340
pattern $bHIGH_INT :: a
$mHIGH_INT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
HIGH_INT = 36341
pattern $bFRAMEBUFFER :: a
$mFRAMEBUFFER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER = 36160
pattern $bRENDERBUFFER :: a
$mRENDERBUFFER :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER = 36161
pattern $bRGBA4 :: a
$mRGBA4 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RGBA4 = 32854
pattern $bRGB5_A1 :: a
$mRGB5_A1 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RGB5_A1 = 32855
pattern $bRGB565 :: a
$mRGB565 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RGB565 = 36194
pattern $bDEPTH_COMPONENT16 :: a
$mDEPTH_COMPONENT16 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_COMPONENT16 = 33189
pattern $bSTENCIL_INDEX :: a
$mSTENCIL_INDEX :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_INDEX = 6401
pattern $bSTENCIL_INDEX8 :: a
$mSTENCIL_INDEX8 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_INDEX8 = 36168
pattern $bDEPTH_STENCIL :: a
$mDEPTH_STENCIL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_STENCIL = 34041
pattern $bRENDERBUFFER_WIDTH :: a
$mRENDERBUFFER_WIDTH :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_WIDTH = 36162
pattern $bRENDERBUFFER_HEIGHT :: a
$mRENDERBUFFER_HEIGHT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_HEIGHT = 36163
pattern $bRENDERBUFFER_INTERNAL_FORMAT :: a
$mRENDERBUFFER_INTERNAL_FORMAT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_INTERNAL_FORMAT = 36164
pattern $bRENDERBUFFER_RED_SIZE :: a
$mRENDERBUFFER_RED_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_RED_SIZE = 36176
pattern $bRENDERBUFFER_GREEN_SIZE :: a
$mRENDERBUFFER_GREEN_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_GREEN_SIZE = 36177
pattern $bRENDERBUFFER_BLUE_SIZE :: a
$mRENDERBUFFER_BLUE_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_BLUE_SIZE = 36178
pattern $bRENDERBUFFER_ALPHA_SIZE :: a
$mRENDERBUFFER_ALPHA_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_ALPHA_SIZE = 36179
pattern $bRENDERBUFFER_DEPTH_SIZE :: a
$mRENDERBUFFER_DEPTH_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_DEPTH_SIZE = 36180
pattern $bRENDERBUFFER_STENCIL_SIZE :: a
$mRENDERBUFFER_STENCIL_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_STENCIL_SIZE = 36181
pattern $bFRAMEBUFFER_ATTACHMENT_OBJECT_TYPE :: a
$mFRAMEBUFFER_ATTACHMENT_OBJECT_TYPE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 36048
pattern $bFRAMEBUFFER_ATTACHMENT_OBJECT_NAME :: a
$mFRAMEBUFFER_ATTACHMENT_OBJECT_NAME :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 36049
pattern $bFRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL :: a
$mFRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 36050
pattern $bFRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE :: a
$mFRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 36051
pattern $bCOLOR_ATTACHMENT0 :: a
$mCOLOR_ATTACHMENT0 :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
COLOR_ATTACHMENT0 = 36064
pattern $bDEPTH_ATTACHMENT :: a
$mDEPTH_ATTACHMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_ATTACHMENT = 36096
pattern $bSTENCIL_ATTACHMENT :: a
$mSTENCIL_ATTACHMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
STENCIL_ATTACHMENT = 36128
pattern $bDEPTH_STENCIL_ATTACHMENT :: a
$mDEPTH_STENCIL_ATTACHMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
DEPTH_STENCIL_ATTACHMENT = 33306
pattern $bNONE :: a
$mNONE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
NONE = 0
pattern $bFRAMEBUFFER_COMPLETE :: a
$mFRAMEBUFFER_COMPLETE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_COMPLETE = 36053
pattern $bFRAMEBUFFER_INCOMPLETE_ATTACHMENT :: a
$mFRAMEBUFFER_INCOMPLETE_ATTACHMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 36054
pattern $bFRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT :: a
$mFRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 36055
pattern $bFRAMEBUFFER_INCOMPLETE_DIMENSIONS :: a
$mFRAMEBUFFER_INCOMPLETE_DIMENSIONS :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 36057
pattern $bFRAMEBUFFER_UNSUPPORTED :: a
$mFRAMEBUFFER_UNSUPPORTED :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_UNSUPPORTED = 36061
pattern $bFRAMEBUFFER_BINDING :: a
$mFRAMEBUFFER_BINDING :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
FRAMEBUFFER_BINDING = 36006
pattern $bRENDERBUFFER_BINDING :: a
$mRENDERBUFFER_BINDING :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
RENDERBUFFER_BINDING = 36007
pattern $bMAX_RENDERBUFFER_SIZE :: a
$mMAX_RENDERBUFFER_SIZE :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
MAX_RENDERBUFFER_SIZE = 34024
pattern $bINVALID_FRAMEBUFFER_OPERATION :: a
$mINVALID_FRAMEBUFFER_OPERATION :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
INVALID_FRAMEBUFFER_OPERATION = 1286
pattern $bUNPACK_FLIP_Y_WEBGL :: a
$mUNPACK_FLIP_Y_WEBGL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNPACK_FLIP_Y_WEBGL = 37440
pattern $bUNPACK_PREMULTIPLY_ALPHA_WEBGL :: a
$mUNPACK_PREMULTIPLY_ALPHA_WEBGL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNPACK_PREMULTIPLY_ALPHA_WEBGL = 37441
pattern $bCONTEXT_LOST_WEBGL :: a
$mCONTEXT_LOST_WEBGL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
CONTEXT_LOST_WEBGL = 37442
pattern $bUNPACK_COLORSPACE_CONVERSION_WEBGL :: a
$mUNPACK_COLORSPACE_CONVERSION_WEBGL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
UNPACK_COLORSPACE_CONVERSION_WEBGL = 37443
pattern $bBROWSER_DEFAULT_WEBGL :: a
$mBROWSER_DEFAULT_WEBGL :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
BROWSER_DEFAULT_WEBGL = 37444

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.canvas Mozilla WebGLRenderingContextBase.canvas documentation> 
getCanvas ::
          (MonadDOM m, IsWebGLRenderingContextBase self) =>
            self -> m HTMLCanvasElement
getCanvas :: self -> m HTMLCanvasElement
getCanvas self
self
  = DOM HTMLCanvasElement -> m HTMLCanvasElement
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char]
-> IndexPreservingGetter WebGLRenderingContextBase (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"canvas") JSM JSVal
-> (JSVal -> DOM HTMLCanvasElement) -> DOM HTMLCanvasElement
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM HTMLCanvasElement
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.drawingBufferWidth Mozilla WebGLRenderingContextBase.drawingBufferWidth documentation> 
getDrawingBufferWidth ::
                      (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m GLsizei
getDrawingBufferWidth :: self -> m GLint
getDrawingBufferWidth self
self
  = DOM GLint -> m GLint
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char]
-> IndexPreservingGetter WebGLRenderingContextBase (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"drawingBufferWidth")
         JSM JSVal -> (JSVal -> DOM GLint) -> DOM GLint
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLint
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContextBase.drawingBufferHeight Mozilla WebGLRenderingContextBase.drawingBufferHeight documentation> 
getDrawingBufferHeight ::
                       (MonadDOM m, IsWebGLRenderingContextBase self) => self -> m GLsizei
getDrawingBufferHeight :: self -> m GLint
getDrawingBufferHeight self
self
  = DOM GLint -> m GLint
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (((self -> WebGLRenderingContextBase
forall o.
IsWebGLRenderingContextBase o =>
o -> WebGLRenderingContextBase
toWebGLRenderingContextBase self
self) WebGLRenderingContextBase
-> Getting (JSM JSVal) WebGLRenderingContextBase (JSM JSVal)
-> JSM JSVal
forall s a. s -> Getting a s a -> a
^. [Char]
-> IndexPreservingGetter WebGLRenderingContextBase (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js [Char]
"drawingBufferHeight")
         JSM JSVal -> (JSVal -> DOM GLint) -> DOM GLint
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM GLint
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)