mirror of
https://github.com/servo/servo.git
synced 2025-08-11 00:15:32 +01:00
Use active uniforms data to implement gl.uniform* checks
This commit is contained in:
parent
e7631cea61
commit
476640c3ab
14 changed files with 477 additions and 304 deletions
|
@ -15,26 +15,38 @@ pub struct WebGLUniformLocation {
|
|||
reflector_: Reflector,
|
||||
id: i32,
|
||||
program_id: WebGLProgramId,
|
||||
size: Option<i32>,
|
||||
type_: u32,
|
||||
}
|
||||
|
||||
impl WebGLUniformLocation {
|
||||
fn new_inherited(id: i32,
|
||||
program_id: WebGLProgramId)
|
||||
-> WebGLUniformLocation {
|
||||
WebGLUniformLocation {
|
||||
fn new_inherited(
|
||||
id: i32,
|
||||
program_id: WebGLProgramId,
|
||||
size: Option<i32>,
|
||||
type_: u32,
|
||||
) -> Self {
|
||||
Self {
|
||||
reflector_: Reflector::new(),
|
||||
id: id,
|
||||
program_id: program_id,
|
||||
id,
|
||||
program_id,
|
||||
size,
|
||||
type_,
|
||||
}
|
||||
}
|
||||
|
||||
pub fn new(window: &Window,
|
||||
id: i32,
|
||||
program_id: WebGLProgramId)
|
||||
-> DomRoot<WebGLUniformLocation> {
|
||||
reflect_dom_object(Box::new(WebGLUniformLocation::new_inherited(id, program_id)),
|
||||
window,
|
||||
WebGLUniformLocationBinding::Wrap)
|
||||
pub fn new(
|
||||
window: &Window,
|
||||
id: i32,
|
||||
program_id: WebGLProgramId,
|
||||
size: Option<i32>,
|
||||
type_: u32,
|
||||
) -> DomRoot<Self> {
|
||||
reflect_dom_object(
|
||||
Box::new(Self::new_inherited(id, program_id, size, type_)),
|
||||
window,
|
||||
WebGLUniformLocationBinding::Wrap,
|
||||
)
|
||||
}
|
||||
|
||||
pub fn id(&self) -> i32 {
|
||||
|
@ -44,4 +56,12 @@ impl WebGLUniformLocation {
|
|||
pub fn program_id(&self) -> WebGLProgramId {
|
||||
self.program_id
|
||||
}
|
||||
|
||||
pub fn size(&self) -> Option<i32> {
|
||||
self.size
|
||||
}
|
||||
|
||||
pub fn type_(&self) -> u32 {
|
||||
self.type_
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue