pub trait WebGL2RenderingContextMethods {
Show 232 methods
// Required methods
fn CopyBufferSubData(
&self,
readTarget: u32,
writeTarget: u32,
readOffset: i64,
writeOffset: i64,
size: i64,
);
fn GetBufferSubData(
&self,
target: u32,
srcByteOffset: i64,
dstBuffer: CustomAutoRooterGuard<'_, ArrayBufferView>,
dstOffset: u32,
length: u32,
);
fn FramebufferTextureLayer(
&self,
target: u32,
attachment: u32,
texture: Option<&WebGLTexture>,
level: i32,
layer: i32,
);
fn InvalidateFramebuffer(&self, target: u32, attachments: Vec<u32>);
fn InvalidateSubFramebuffer(
&self,
target: u32,
attachments: Vec<u32>,
x: i32,
y: i32,
width: i32,
height: i32,
);
fn ReadBuffer(&self, src: u32);
fn GetInternalformatParameter(
&self,
cx: SafeJSContext,
target: u32,
internalformat: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn RenderbufferStorageMultisample(
&self,
target: u32,
samples: i32,
internalformat: u32,
width: i32,
height: i32,
);
fn TexStorage2D(
&self,
target: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
);
fn TexStorage3D(
&self,
target: u32,
levels: i32,
internalformat: u32,
width: i32,
height: i32,
depth: i32,
);
fn GetFragDataLocation(
&self,
program: &WebGLProgram,
name: DOMString,
) -> i32;
fn Uniform1ui(&self, location: Option<&WebGLUniformLocation>, v0: u32);
fn Uniform2ui(
&self,
location: Option<&WebGLUniformLocation>,
v0: u32,
v1: u32,
);
fn Uniform3ui(
&self,
location: Option<&WebGLUniformLocation>,
v0: u32,
v1: u32,
v2: u32,
);
fn Uniform4ui(
&self,
location: Option<&WebGLUniformLocation>,
v0: u32,
v1: u32,
v2: u32,
v3: u32,
);
fn Uniform1uiv(
&self,
location: Option<&WebGLUniformLocation>,
data: Uint32ArrayOrUnsignedLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform2uiv(
&self,
location: Option<&WebGLUniformLocation>,
data: Uint32ArrayOrUnsignedLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform3uiv(
&self,
location: Option<&WebGLUniformLocation>,
data: Uint32ArrayOrUnsignedLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform4uiv(
&self,
location: Option<&WebGLUniformLocation>,
data: Uint32ArrayOrUnsignedLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix3x2fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix4x2fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix2x3fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix4x3fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix2x4fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix3x4fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn VertexAttribI4i(&self, index: u32, x: i32, y: i32, z: i32, w: i32);
fn VertexAttribI4iv(&self, index: u32, values: Int32ArrayOrLongSequence);
fn VertexAttribI4ui(&self, index: u32, x: u32, y: u32, z: u32, w: u32);
fn VertexAttribI4uiv(
&self,
index: u32,
values: Uint32ArrayOrUnsignedLongSequence,
);
fn VertexAttribIPointer(
&self,
index: u32,
size: i32,
type_: u32,
stride: i32,
offset: i64,
);
fn VertexAttribDivisor(&self, index: u32, divisor: u32);
fn DrawArraysInstanced(
&self,
mode: u32,
first: i32,
count: i32,
instanceCount: i32,
);
fn DrawElementsInstanced(
&self,
mode: u32,
count: i32,
type_: u32,
offset: i64,
instanceCount: i32,
);
fn DrawRangeElements(
&self,
mode: u32,
start: u32,
end: u32,
count: i32,
type_: u32,
offset: i64,
);
fn DrawBuffers(&self, buffers: Vec<u32>);
fn ClearBufferfv(
&self,
buffer: u32,
drawbuffer: i32,
values: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
);
fn ClearBufferiv(
&self,
buffer: u32,
drawbuffer: i32,
values: Int32ArrayOrLongSequence,
srcOffset: u32,
);
fn ClearBufferuiv(
&self,
buffer: u32,
drawbuffer: i32,
values: Uint32ArrayOrUnsignedLongSequence,
srcOffset: u32,
);
fn ClearBufferfi(
&self,
buffer: u32,
drawbuffer: i32,
depth: f32,
stencil: i32,
);
fn CreateQuery(&self) -> Option<Root<Dom<WebGLQuery>>>;
fn DeleteQuery(&self, query: Option<&WebGLQuery>);
fn IsQuery(&self, query: Option<&WebGLQuery>) -> bool;
fn BeginQuery(&self, target: u32, query: &WebGLQuery);
fn EndQuery(&self, target: u32);
fn GetQuery(&self, target: u32, pname: u32) -> Option<Root<Dom<WebGLQuery>>>;
fn GetQueryParameter(
&self,
cx: SafeJSContext,
query: &WebGLQuery,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn CreateSampler(&self) -> Option<Root<Dom<WebGLSampler>>>;
fn DeleteSampler(&self, sampler: Option<&WebGLSampler>);
fn IsSampler(&self, sampler: Option<&WebGLSampler>) -> bool;
fn BindSampler(&self, unit: u32, sampler: Option<&WebGLSampler>);
fn SamplerParameteri(&self, sampler: &WebGLSampler, pname: u32, param: i32);
fn SamplerParameterf(&self, sampler: &WebGLSampler, pname: u32, param: f32);
fn GetSamplerParameter(
&self,
cx: SafeJSContext,
sampler: &WebGLSampler,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn FenceSync(
&self,
condition: u32,
flags: u32,
) -> Option<Root<Dom<WebGLSync>>>;
fn IsSync(&self, sync: Option<&WebGLSync>) -> bool;
fn DeleteSync(&self, sync: Option<&WebGLSync>);
fn ClientWaitSync(&self, sync: &WebGLSync, flags: u32, timeout: u64) -> u32;
fn WaitSync(&self, sync: &WebGLSync, flags: u32, timeout: i64);
fn GetSyncParameter(
&self,
cx: SafeJSContext,
sync: &WebGLSync,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn CreateTransformFeedback(
&self,
) -> Option<Root<Dom<WebGLTransformFeedback>>>;
fn DeleteTransformFeedback(&self, tf: Option<&WebGLTransformFeedback>);
fn IsTransformFeedback(&self, tf: Option<&WebGLTransformFeedback>) -> bool;
fn BindTransformFeedback(
&self,
target: u32,
tf: Option<&WebGLTransformFeedback>,
);
fn BeginTransformFeedback(&self, primitiveMode: u32);
fn EndTransformFeedback(&self);
fn TransformFeedbackVaryings(
&self,
program: &WebGLProgram,
varyings: Vec<DOMString>,
bufferMode: u32,
);
fn GetTransformFeedbackVarying(
&self,
program: &WebGLProgram,
index: u32,
) -> Option<Root<Dom<WebGLActiveInfo>>>;
fn PauseTransformFeedback(&self);
fn ResumeTransformFeedback(&self);
fn BindBufferBase(
&self,
target: u32,
index: u32,
buffer: Option<&WebGLBuffer>,
);
fn BindBufferRange(
&self,
target: u32,
index: u32,
buffer: Option<&WebGLBuffer>,
offset: i64,
size: i64,
);
fn GetIndexedParameter(
&self,
cx: SafeJSContext,
target: u32,
index: u32,
rval: MutableHandleValue<'_>,
);
fn GetUniformIndices(
&self,
program: &WebGLProgram,
uniformNames: Vec<DOMString>,
) -> Option<Vec<u32>>;
fn GetActiveUniforms(
&self,
cx: SafeJSContext,
program: &WebGLProgram,
uniformIndices: Vec<u32>,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetUniformBlockIndex(
&self,
program: &WebGLProgram,
uniformBlockName: DOMString,
) -> u32;
fn GetActiveUniformBlockParameter(
&self,
cx: SafeJSContext,
program: &WebGLProgram,
uniformBlockIndex: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetActiveUniformBlockName(
&self,
program: &WebGLProgram,
uniformBlockIndex: u32,
) -> Option<DOMString>;
fn UniformBlockBinding(
&self,
program: &WebGLProgram,
uniformBlockIndex: u32,
uniformBlockBinding: u32,
);
fn CreateVertexArray(&self) -> Option<Root<Dom<WebGLVertexArrayObject>>>;
fn DeleteVertexArray(&self, vertexArray: Option<&WebGLVertexArrayObject>);
fn IsVertexArray(
&self,
vertexArray: Option<&WebGLVertexArrayObject>,
) -> bool;
fn BindVertexArray(&self, array: Option<&WebGLVertexArrayObject>);
fn BufferData(&self, target: u32, size: i64, usage: u32);
fn BufferData_(
&self,
target: u32,
srcData: Option<ArrayBufferViewOrArrayBuffer>,
usage: u32,
);
fn BufferData__(
&self,
target: u32,
srcData: CustomAutoRooterGuard<'_, ArrayBufferView>,
usage: u32,
srcOffset: u32,
length: u32,
);
fn BufferSubData(
&self,
target: u32,
dstByteOffset: i64,
srcData: ArrayBufferViewOrArrayBuffer,
);
fn BufferSubData_(
&self,
target: u32,
dstByteOffset: i64,
srcData: CustomAutoRooterGuard<'_, ArrayBufferView>,
srcOffset: u32,
length: u32,
);
fn TexImage2D(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
border: i32,
format: u32,
type_: u32,
pixels: CustomAutoRooterGuard<'_, Option<ArrayBufferView>>,
) -> Result<(), Error>;
fn TexImage2D_(
&self,
target: u32,
level: i32,
internalformat: i32,
format: u32,
type_: u32,
source: ImageDataOrHTMLImageElementOrHTMLCanvasElementOrHTMLVideoElement,
) -> Result<(), Error>;
fn TexImage2D__(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
border: i32,
format: u32,
type_: u32,
pboOffset: i64,
) -> Result<(), Error>;
fn TexImage2D___(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
border: i32,
format: u32,
type_: u32,
source: ImageDataOrHTMLImageElementOrHTMLCanvasElementOrHTMLVideoElement,
) -> Result<(), Error>;
fn TexImage2D____(
&self,
target: u32,
level: i32,
internalformat: i32,
width: i32,
height: i32,
border: i32,
format: u32,
type_: u32,
srcData: CustomAutoRooterGuard<'_, ArrayBufferView>,
srcOffset: u32,
) -> Result<(), Error>;
fn TexSubImage2D(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
type_: u32,
pixels: CustomAutoRooterGuard<'_, Option<ArrayBufferView>>,
) -> Result<(), Error>;
fn TexSubImage2D_(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
format: u32,
type_: u32,
source: ImageDataOrHTMLImageElementOrHTMLCanvasElementOrHTMLVideoElement,
) -> Result<(), Error>;
fn CompressedTexImage2D(
&self,
target: u32,
level: i32,
internalformat: u32,
width: i32,
height: i32,
border: i32,
srcData: CustomAutoRooterGuard<'_, ArrayBufferView>,
srcOffset: u32,
srcLengthOverride: u32,
);
fn CompressedTexSubImage2D(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
width: i32,
height: i32,
format: u32,
srcData: CustomAutoRooterGuard<'_, ArrayBufferView>,
srcOffset: u32,
srcLengthOverride: u32,
);
fn Uniform1fv(
&self,
location: Option<&WebGLUniformLocation>,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform2fv(
&self,
location: Option<&WebGLUniformLocation>,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform3fv(
&self,
location: Option<&WebGLUniformLocation>,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform4fv(
&self,
location: Option<&WebGLUniformLocation>,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform1iv(
&self,
location: Option<&WebGLUniformLocation>,
data: Int32ArrayOrLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform2iv(
&self,
location: Option<&WebGLUniformLocation>,
data: Int32ArrayOrLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform3iv(
&self,
location: Option<&WebGLUniformLocation>,
data: Int32ArrayOrLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn Uniform4iv(
&self,
location: Option<&WebGLUniformLocation>,
data: Int32ArrayOrLongSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix2fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix3fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn UniformMatrix4fv(
&self,
location: Option<&WebGLUniformLocation>,
transpose: bool,
data: Float32ArrayOrUnrestrictedFloatSequence,
srcOffset: u32,
srcLength: u32,
);
fn ReadPixels(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
type_: u32,
dstData: CustomAutoRooterGuard<'_, Option<ArrayBufferView>>,
);
fn ReadPixels_(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
type_: u32,
offset: i64,
);
fn ReadPixels__(
&self,
x: i32,
y: i32,
width: i32,
height: i32,
format: u32,
type_: u32,
dstData: CustomAutoRooterGuard<'_, ArrayBufferView>,
dstOffset: u32,
);
fn Canvas(&self) -> HTMLCanvasElementOrOffscreenCanvas;
fn DrawingBufferWidth(&self) -> i32;
fn DrawingBufferHeight(&self) -> i32;
fn GetContextAttributes(&self) -> Option<WebGLContextAttributes>;
fn IsContextLost(&self) -> bool;
fn GetSupportedExtensions(&self) -> Option<Vec<DOMString>>;
fn GetExtension(
&self,
cx: SafeJSContext,
name: DOMString,
) -> Option<NonNull<JSObject>>;
fn ActiveTexture(&self, texture: u32);
fn AttachShader(&self, program: &WebGLProgram, shader: &WebGLShader);
fn BindAttribLocation(
&self,
program: &WebGLProgram,
index: u32,
name: DOMString,
);
fn BindBuffer(&self, target: u32, buffer: Option<&WebGLBuffer>);
fn BindFramebuffer(
&self,
target: u32,
framebuffer: Option<&WebGLFramebuffer>,
);
fn BindRenderbuffer(
&self,
target: u32,
renderbuffer: Option<&WebGLRenderbuffer>,
);
fn BindTexture(&self, target: u32, texture: Option<&WebGLTexture>);
fn BlendColor(&self, red: f32, green: f32, blue: f32, alpha: f32);
fn BlendEquation(&self, mode: u32);
fn BlendEquationSeparate(&self, modeRGB: u32, modeAlpha: u32);
fn BlendFunc(&self, sfactor: u32, dfactor: u32);
fn BlendFuncSeparate(
&self,
srcRGB: u32,
dstRGB: u32,
srcAlpha: u32,
dstAlpha: u32,
);
fn CheckFramebufferStatus(&self, target: u32) -> u32;
fn Clear(&self, mask: u32);
fn ClearColor(&self, red: f32, green: f32, blue: f32, alpha: f32);
fn ClearDepth(&self, depth: f32);
fn ClearStencil(&self, s: i32);
fn ColorMask(&self, red: bool, green: bool, blue: bool, alpha: bool);
fn CompileShader(&self, shader: &WebGLShader);
fn CopyTexImage2D(
&self,
target: u32,
level: i32,
internalformat: u32,
x: i32,
y: i32,
width: i32,
height: i32,
border: i32,
);
fn CopyTexSubImage2D(
&self,
target: u32,
level: i32,
xoffset: i32,
yoffset: i32,
x: i32,
y: i32,
width: i32,
height: i32,
);
fn CreateBuffer(&self) -> Option<Root<Dom<WebGLBuffer>>>;
fn CreateFramebuffer(&self) -> Option<Root<Dom<WebGLFramebuffer>>>;
fn CreateProgram(&self) -> Option<Root<Dom<WebGLProgram>>>;
fn CreateRenderbuffer(&self) -> Option<Root<Dom<WebGLRenderbuffer>>>;
fn CreateShader(&self, type_: u32) -> Option<Root<Dom<WebGLShader>>>;
fn CreateTexture(&self) -> Option<Root<Dom<WebGLTexture>>>;
fn CullFace(&self, mode: u32);
fn DeleteBuffer(&self, buffer: Option<&WebGLBuffer>);
fn DeleteFramebuffer(&self, framebuffer: Option<&WebGLFramebuffer>);
fn DeleteProgram(&self, program: Option<&WebGLProgram>);
fn DeleteRenderbuffer(&self, renderbuffer: Option<&WebGLRenderbuffer>);
fn DeleteShader(&self, shader: Option<&WebGLShader>);
fn DeleteTexture(&self, texture: Option<&WebGLTexture>);
fn DepthFunc(&self, func: u32);
fn DepthMask(&self, flag: bool);
fn DepthRange(&self, zNear: f32, zFar: f32);
fn DetachShader(&self, program: &WebGLProgram, shader: &WebGLShader);
fn Disable(&self, cap: u32);
fn DisableVertexAttribArray(&self, index: u32);
fn DrawArrays(&self, mode: u32, first: i32, count: i32);
fn DrawElements(&self, mode: u32, count: i32, type_: u32, offset: i64);
fn Enable(&self, cap: u32);
fn EnableVertexAttribArray(&self, index: u32);
fn Finish(&self);
fn Flush(&self);
fn FramebufferRenderbuffer(
&self,
target: u32,
attachment: u32,
renderbuffertarget: u32,
renderbuffer: Option<&WebGLRenderbuffer>,
);
fn FramebufferTexture2D(
&self,
target: u32,
attachment: u32,
textarget: u32,
texture: Option<&WebGLTexture>,
level: i32,
);
fn FrontFace(&self, mode: u32);
fn GenerateMipmap(&self, target: u32);
fn GetActiveAttrib(
&self,
program: &WebGLProgram,
index: u32,
) -> Option<Root<Dom<WebGLActiveInfo>>>;
fn GetActiveUniform(
&self,
program: &WebGLProgram,
index: u32,
) -> Option<Root<Dom<WebGLActiveInfo>>>;
fn GetAttachedShaders(
&self,
program: &WebGLProgram,
) -> Option<Vec<Root<Dom<WebGLShader>>>>;
fn GetAttribLocation(&self, program: &WebGLProgram, name: DOMString) -> i32;
fn GetBufferParameter(
&self,
cx: SafeJSContext,
target: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetParameter(
&self,
cx: SafeJSContext,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetError(&self) -> u32;
fn GetFramebufferAttachmentParameter(
&self,
cx: SafeJSContext,
target: u32,
attachment: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetProgramParameter(
&self,
cx: SafeJSContext,
program: &WebGLProgram,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetProgramInfoLog(&self, program: &WebGLProgram) -> Option<DOMString>;
fn GetRenderbufferParameter(
&self,
cx: SafeJSContext,
target: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetShaderParameter(
&self,
cx: SafeJSContext,
shader: &WebGLShader,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetShaderPrecisionFormat(
&self,
shadertype: u32,
precisiontype: u32,
) -> Option<Root<Dom<WebGLShaderPrecisionFormat>>>;
fn GetShaderInfoLog(&self, shader: &WebGLShader) -> Option<DOMString>;
fn GetShaderSource(&self, shader: &WebGLShader) -> Option<DOMString>;
fn GetTexParameter(
&self,
cx: SafeJSContext,
target: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetUniform(
&self,
cx: SafeJSContext,
program: &WebGLProgram,
location: &WebGLUniformLocation,
rval: MutableHandleValue<'_>,
);
fn GetUniformLocation(
&self,
program: &WebGLProgram,
name: DOMString,
) -> Option<Root<Dom<WebGLUniformLocation>>>;
fn GetVertexAttrib(
&self,
cx: SafeJSContext,
index: u32,
pname: u32,
rval: MutableHandleValue<'_>,
);
fn GetVertexAttribOffset(&self, index: u32, pname: u32) -> i64;
fn Hint(&self, target: u32, mode: u32);
fn IsBuffer(&self, buffer: Option<&WebGLBuffer>) -> bool;
fn IsEnabled(&self, cap: u32) -> bool;
fn IsFramebuffer(&self, framebuffer: Option<&WebGLFramebuffer>) -> bool;
fn IsProgram(&self, program: Option<&WebGLProgram>) -> bool;
fn IsRenderbuffer(&self, renderbuffer: Option<&WebGLRenderbuffer>) -> bool;
fn IsShader(&self, shader: Option<&WebGLShader>) -> bool;
fn IsTexture(&self, texture: Option<&WebGLTexture>) -> bool;
fn LineWidth(&self, width: f32);
fn LinkProgram(&self, program: &WebGLProgram);
fn PixelStorei(&self, pname: u32, param: i32);
fn PolygonOffset(&self, factor: f32, units: f32);
fn RenderbufferStorage(
&self,
target: u32,
internalformat: u32,
width: i32,
height: i32,
);
fn SampleCoverage(&self, value: f32, invert: bool);
fn Scissor(&self, x: i32, y: i32, width: i32, height: i32);
fn ShaderSource(&self, shader: &WebGLShader, source: DOMString);
fn StencilFunc(&self, func: u32, ref_: i32, mask: u32);
fn StencilFuncSeparate(&self, face: u32, func: u32, ref_: i32, mask: u32);
fn StencilMask(&self, mask: u32);
fn StencilMaskSeparate(&self, face: u32, mask: u32);
fn StencilOp(&self, fail: u32, zfail: u32, zpass: u32);
fn StencilOpSeparate(&self, face: u32, fail: u32, zfail: u32, zpass: u32);
fn TexParameterf(&self, target: u32, pname: u32, param: f32);
fn TexParameteri(&self, target: u32, pname: u32, param: i32);
fn Uniform1f(&self, location: Option<&WebGLUniformLocation>, x: f32);
fn Uniform2f(&self, location: Option<&WebGLUniformLocation>, x: f32, y: f32);
fn Uniform3f(
&self,
location: Option<&WebGLUniformLocation>,
x: f32,
y: f32,
z: f32,
);
fn Uniform4f(
&self,
location: Option<&WebGLUniformLocation>,
x: f32,
y: f32,
z: f32,
w: f32,
);
fn Uniform1i(&self, location: Option<&WebGLUniformLocation>, x: i32);
fn Uniform2i(&self, location: Option<&WebGLUniformLocation>, x: i32, y: i32);
fn Uniform3i(
&self,
location: Option<&WebGLUniformLocation>,
x: i32,
y: i32,
z: i32,
);
fn Uniform4i(
&self,
location: Option<&WebGLUniformLocation>,
x: i32,
y: i32,
z: i32,
w: i32,
);
fn UseProgram(&self, program: Option<&WebGLProgram>);
fn ValidateProgram(&self, program: &WebGLProgram);
fn VertexAttrib1f(&self, indx: u32, x: f32);
fn VertexAttrib2f(&self, indx: u32, x: f32, y: f32);
fn VertexAttrib3f(&self, indx: u32, x: f32, y: f32, z: f32);
fn VertexAttrib4f(&self, indx: u32, x: f32, y: f32, z: f32, w: f32);
fn VertexAttrib1fv(
&self,
indx: u32,
values: Float32ArrayOrUnrestrictedFloatSequence,
);
fn VertexAttrib2fv(
&self,
indx: u32,
values: Float32ArrayOrUnrestrictedFloatSequence,
);
fn VertexAttrib3fv(
&self,
indx: u32,
values: Float32ArrayOrUnrestrictedFloatSequence,
);
fn VertexAttrib4fv(
&self,
indx: u32,
values: Float32ArrayOrUnrestrictedFloatSequence,
);
fn VertexAttribPointer(
&self,
indx: u32,
size: i32,
type_: u32,
normalized: bool,
stride: i32,
offset: i64,
);
fn Viewport(&self, x: i32, y: i32, width: i32, height: i32);
fn MakeXRCompatible(&self, _can_gc: CanGc) -> Rc<Promise>;
}