Struct script::dom::vertexarrayobject::VertexArrayObject
source · pub struct VertexArrayObject {
context: Dom<WebGLRenderingContext>,
id: Option<WebGLVertexArrayId>,
ever_bound: Cell<bool>,
is_deleted: Cell<bool>,
vertex_attribs: DomRefCell<Box<[VertexAttribData]>>,
element_array_buffer: MutNullableDom<WebGLBuffer>,
}
Fields§
§context: Dom<WebGLRenderingContext>
§id: Option<WebGLVertexArrayId>
§ever_bound: Cell<bool>
§is_deleted: Cell<bool>
§vertex_attribs: DomRefCell<Box<[VertexAttribData]>>
§element_array_buffer: MutNullableDom<WebGLBuffer>
Implementations§
source§impl VertexArrayObject
impl VertexArrayObject
pub fn new( context: &WebGLRenderingContext, id: Option<WebGLVertexArrayId>, ) -> Self
pub fn id(&self) -> Option<WebGLVertexArrayId>
pub fn is_deleted(&self) -> bool
pub fn delete(&self, operation_fallibility: Operation)
pub fn ever_bound(&self) -> bool
pub fn set_ever_bound(&self)
pub fn element_array_buffer(&self) -> &MutNullableDom<WebGLBuffer>
pub fn get_vertex_attrib(&self, index: u32) -> Option<Ref<'_, VertexAttribData>>
pub fn set_vertex_attrib_type(&self, index: u32, type_: u32)
pub fn vertex_attrib_pointer( &self, index: u32, size: i32, type_: u32, normalized: bool, stride: i32, offset: i64, ) -> WebGLResult<()>
pub fn vertex_attrib_divisor(&self, index: u32, value: u32)
pub fn enabled_vertex_attrib_array(&self, index: u32, value: bool)
pub fn unbind_buffer(&self, buffer: &WebGLBuffer)
pub fn validate_for_draw( &self, required_len: u32, instance_count: u32, active_attribs: &[ActiveAttribInfo], ) -> WebGLResult<()>
Trait Implementations§
source§impl Drop for VertexArrayObject
impl Drop for VertexArrayObject
source§impl MallocSizeOf for VertexArrayObject
impl MallocSizeOf for VertexArrayObject
source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Auto Trait Implementations§
impl !Freeze for VertexArrayObject
impl !RefUnwindSafe for VertexArrayObject
impl !Send for VertexArrayObject
impl !Sync for VertexArrayObject
impl Unpin for VertexArrayObject
impl !UnwindSafe for VertexArrayObject
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Filterable for T
impl<T> Filterable for T
source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(_: DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert