pub struct BufferAny { /* private fields */ }
Expand description
Represents a sub-part of a buffer.
Doesn’t contain any information about the content, contrary to Buffer
.
Implementations§
source§impl BufferAny
impl BufferAny
sourcepub fn as_slice_any(&self) -> BufferAnySlice<'_>
pub fn as_slice_any(&self) -> BufferAnySlice<'_>
Builds a slice-any containing the whole subbuffer.
sourcepub fn get_elements_size(&self) -> usize
pub fn get_elements_size(&self) -> usize
Returns the size in bytes of each element in the buffer.
sourcepub fn get_elements_count(&self) -> usize
pub fn get_elements_count(&self) -> usize
Returns the number of elements in the buffer.
sourcepub fn get_context(&self) -> &Rc<Context>
pub fn get_context(&self) -> &Rc<Context>
Returns the context corresponding to this buffer.
sourcepub fn invalidate(&self)
pub fn invalidate(&self)
Invalidates the content of the buffer. The data becomes undefined.
This operation is a no-op if the backend doesn’t support it and for persistent-mapped buffers.
sourcepub unsafe fn read<T>(&self) -> Result<T::Owned, ReadError>where
T: Content,
pub unsafe fn read<T>(&self) -> Result<T::Owned, ReadError>where T: Content,
UNSTABLE. This function can be removed at any moment without any further notice.
Considers that the buffer is filled with elements of type T
and reads them.
Panic
Panicks if the size of the buffer is not a multiple of the size of the data.
For example, trying to read some (u8, u8, u8, u8)
s from a buffer of 7 bytes will panic.