pub trait GlBuffer: GlObject + GlBind + GlTarget {
// Provided methods
fn data<T: Sized>(&self, data: &Vec<T>, usage: BufferUsage) { ... }
fn subdata<T: Sized>(&self, offset: isize, count: usize, data: &Vec<T>) { ... }
fn bind_read(&self) { ... }
fn bind_write(&self) { ... }
fn copy(&self, read_offset: isize, write_offset: isize, size: isize) { ... }
fn copy_from(
&self,
other: impl GlBuffer,
read_offset: isize,
write_offset: isize,
size: isize
) { ... }
fn is_binded(&self) -> bool { ... }
}