pub struct Binding {
pub name: Arc<str>,
pub binding: u32,
pub buffer_index: usize,
pub role: BindingRole,
pub element_size: usize,
pub preferred_alignment: usize,
pub element_count: u32,
pub static_byte_len: Option<usize>,
pub input_index: Option<usize>,
pub output_index: Option<usize>,
}Expand description
One validated binding descriptor.
Fields§
§name: Arc<str>VYRE buffer name.
binding: u32VYRE binding number.
buffer_index: usizeOriginal buffer index in Program::buffers.
role: BindingRoleHost/device role for launch.
element_size: usizeElement size in bytes when statically known.
preferred_alignment: usizePreferred byte alignment for backend allocation/upload planning.
This optimization contract is derived from BufferDecl::hints and the
scalar element size. It does not change program semantics; concrete
drivers use it to choose buffer allocation and launch paths without
rewalking the IR.
element_count: u32Declared or input-derived element count. Zero means runtime-sized.
static_byte_len: Option<usize>Static byte count when known.
input_index: Option<usize>Index in the caller’s input slice, if this binding consumes input.
output_index: Option<usize>Index in the backend output vector, if this binding is observed output.
Trait Implementations§
impl Eq for Binding
impl StructuralPartialEq for Binding
Auto Trait Implementations§
impl Freeze for Binding
impl RefUnwindSafe for Binding
impl Send for Binding
impl Sync for Binding
impl Unpin for Binding
impl UnsafeUnpin for Binding
impl UnwindSafe for Binding
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.