script/dom/webgl/
webglactiveinfo.rs1use dom_struct::dom_struct;
7use js::context::JSContext;
8use script_bindings::reflector::{Reflector, reflect_dom_object_with_cx};
9
10use crate::dom::bindings::codegen::Bindings::WebGLActiveInfoBinding::WebGLActiveInfoMethods;
11use crate::dom::bindings::root::DomRoot;
12use crate::dom::bindings::str::DOMString;
13use crate::dom::window::Window;
14
15#[dom_struct]
16pub(crate) struct WebGLActiveInfo {
17 reflector_: Reflector,
18 size: i32,
19 ty: u32,
21 name: DOMString,
22}
23
24impl WebGLActiveInfo {
25 fn new_inherited(size: i32, ty: u32, name: DOMString) -> WebGLActiveInfo {
26 WebGLActiveInfo {
27 reflector_: Reflector::new(),
28 size,
29 ty,
30 name,
31 }
32 }
33
34 pub(crate) fn new(
35 cx: &mut JSContext,
36 window: &Window,
37 size: i32,
38 ty: u32,
39 name: DOMString,
40 ) -> DomRoot<WebGLActiveInfo> {
41 reflect_dom_object_with_cx(
42 Box::new(WebGLActiveInfo::new_inherited(size, ty, name)),
43 window,
44 cx,
45 )
46 }
47}
48
49impl WebGLActiveInfoMethods<crate::DomTypeHolder> for WebGLActiveInfo {
50 fn Size(&self) -> i32 {
52 self.size
53 }
54
55 fn Type(&self) -> u32 {
57 self.ty
58 }
59
60 fn Name(&self) -> DOMString {
62 self.name.clone()
63 }
64}