script/dom/webgl/
webglactiveinfo.rs1use dom_struct::dom_struct;
7
8use crate::dom::bindings::codegen::Bindings::WebGLActiveInfoBinding::WebGLActiveInfoMethods;
9use crate::dom::bindings::reflector::{Reflector, reflect_dom_object};
10use crate::dom::bindings::root::DomRoot;
11use crate::dom::bindings::str::DOMString;
12use crate::dom::window::Window;
13use crate::script_runtime::CanGc;
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 window: &Window,
36 size: i32,
37 ty: u32,
38 name: DOMString,
39 can_gc: CanGc,
40 ) -> DomRoot<WebGLActiveInfo> {
41 reflect_dom_object(
42 Box::new(WebGLActiveInfo::new_inherited(size, ty, name)),
43 window,
44 can_gc,
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}