pub struct BufferBinding<'a> {
pub buffer: &'a Buffer,
pub offset: u64,
pub size: Option<NonZero<u64>>,
}
Expand description
Describes the segment of a buffer to bind.
Corresponds to WebGPU GPUBufferBinding
.
Fields§
§buffer: &'a Buffer
The buffer to bind.
offset: u64
Base offset of the buffer, in bytes.
If the has_dynamic_offset
field of this buffer’s layout entry is
true
, the offset here will be added to the dynamic offset passed to
RenderPass::set_bind_group
or ComputePass::set_bind_group
.
If the buffer was created with BufferUsages::UNIFORM
, then this
offset must be a multiple of
Limits::min_uniform_buffer_offset_alignment
.
If the buffer was created with BufferUsages::STORAGE
, then this
offset must be a multiple of
Limits::min_storage_buffer_offset_alignment
.
size: Option<NonZero<u64>>
Size of the binding in bytes, or None
for using the rest of the buffer.
Trait Implementations§
Source§impl<'a> Clone for BufferBinding<'a>
impl<'a> Clone for BufferBinding<'a>
Source§fn clone(&self) -> BufferBinding<'a>
fn clone(&self) -> BufferBinding<'a>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> Debug for BufferBinding<'a>
impl<'a> Debug for BufferBinding<'a>
Source§impl<'a> IntoBinding<'a> for BufferBinding<'a>
impl<'a> IntoBinding<'a> for BufferBinding<'a>
fn into_binding(self) -> BindingResource<'a>
Auto Trait Implementations§
impl<'a> Freeze for BufferBinding<'a>
impl<'a> !RefUnwindSafe for BufferBinding<'a>
impl<'a> Send for BufferBinding<'a>
impl<'a> Sync for BufferBinding<'a>
impl<'a> Unpin for BufferBinding<'a>
impl<'a> !UnwindSafe for BufferBinding<'a>
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
Return the
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.