aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/webgluniformlocation.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/webgluniformlocation.rs')
-rw-r--r--components/script/dom/webgluniformlocation.rs80
1 files changed, 61 insertions, 19 deletions
diff --git a/components/script/dom/webgluniformlocation.rs b/components/script/dom/webgluniformlocation.rs
index d76ab91ee5d..153b2e651ba 100644
--- a/components/script/dom/webgluniformlocation.rs
+++ b/components/script/dom/webgluniformlocation.rs
@@ -1,40 +1,66 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
// https://www.khronos.org/registry/webgl/specs/latest/1.0/webgl.idl
-use dom::bindings::codegen::Bindings::WebGLUniformLocationBinding;
-use dom::bindings::js::Root;
-use dom::bindings::reflector::{Reflector, reflect_dom_object};
-use dom::window::Window;
+use crate::dom::bindings::reflector::{reflect_dom_object, Reflector};
+use crate::dom::bindings::root::DomRoot;
+use crate::dom::window::Window;
+use canvas_traits::webgl::WebGLContextId;
+use canvas_traits::webgl::WebGLProgramId;
use dom_struct::dom_struct;
-use webrender_traits::WebGLProgramId;
#[dom_struct]
pub struct WebGLUniformLocation {
reflector_: Reflector,
id: i32,
+ context_id: WebGLContextId,
program_id: WebGLProgramId,
+ link_generation: u64,
+ size: Option<i32>,
+ type_: u32,
}
impl WebGLUniformLocation {
- fn new_inherited(id: i32,
- program_id: WebGLProgramId)
- -> WebGLUniformLocation {
- WebGLUniformLocation {
+ fn new_inherited(
+ id: i32,
+ context_id: WebGLContextId,
+ program_id: WebGLProgramId,
+ link_generation: u64,
+ size: Option<i32>,
+ type_: u32,
+ ) -> Self {
+ Self {
reflector_: Reflector::new(),
- id: id,
- program_id: program_id,
+ id,
+ context_id,
+ program_id,
+ link_generation,
+ size,
+ type_,
}
}
- pub fn new(window: &Window,
- id: i32,
- program_id: WebGLProgramId)
- -> Root<WebGLUniformLocation> {
- reflect_dom_object(box WebGLUniformLocation::new_inherited(id, program_id),
- window,
- WebGLUniformLocationBinding::Wrap)
+ pub fn new(
+ window: &Window,
+ id: i32,
+ context_id: WebGLContextId,
+ program_id: WebGLProgramId,
+ link_generation: u64,
+ size: Option<i32>,
+ type_: u32,
+ ) -> DomRoot<Self> {
+ reflect_dom_object(
+ Box::new(Self::new_inherited(
+ id,
+ context_id,
+ program_id,
+ link_generation,
+ size,
+ type_,
+ )),
+ window,
+ )
}
pub fn id(&self) -> i32 {
@@ -44,4 +70,20 @@ impl WebGLUniformLocation {
pub fn program_id(&self) -> WebGLProgramId {
self.program_id
}
+
+ pub fn context_id(&self) -> WebGLContextId {
+ self.context_id
+ }
+
+ pub fn link_generation(&self) -> u64 {
+ self.link_generation
+ }
+
+ pub fn size(&self) -> Option<i32> {
+ self.size
+ }
+
+ pub fn type_(&self) -> u32 {
+ self.type_
+ }
}