Struct StructAccess
pub struct StructAccess {
pub pc: u32,
pub struct_memory_id: u64,
pub field_offset: u32,
pub is_32_bit_ptr_load: bool,
}
Expand description
Describes location of an instruction that accesses a struct field.
This is used as auxiliary information passed from the verifier to the linker. The linker may update these instructions.
Fields§
§pc: u32
Index of the instruction in the program.
struct_memory_id: u64
Id of the struct being accessed.
field_offset: u32
Offset of the field being accessed.
is_32_bit_ptr_load: bool
Indicates that the instruction loads a 32-bit pointer field. These loads must be remapped to 64-bit fields.
Trait Implementations§
§impl Clone for StructAccess
impl Clone for StructAccess
§fn clone(&self) -> StructAccess
fn clone(&self) -> StructAccess
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 more§impl Debug for StructAccess
impl Debug for StructAccess
§impl<D> Decode<StructAccess, D> for StructAccesswhere
D: ResourceDialect,
impl<D> Decode<StructAccess, D> for StructAccesswhere
D: ResourceDialect,
§fn new_empty() -> StructAccess
fn new_empty() -> StructAccess
Creates a valid instance of
Self
. The specific value does not matter,
since it will be overwritten by decode
.§impl<D> Encode<StructAccess, D> for &StructAccesswhere
D: ResourceDialect,
impl<D> Encode<StructAccess, D> for &StructAccesswhere
D: ResourceDialect,
§impl Hash for StructAccess
impl Hash for StructAccess
§impl Ord for StructAccess
impl Ord for StructAccess
§impl PartialEq for StructAccess
impl PartialEq for StructAccess
§impl PartialOrd for StructAccess
impl PartialOrd for StructAccess
§impl TypeMarker for StructAccess
impl TypeMarker for StructAccess
§type Owned = StructAccess
type Owned = StructAccess
The owned Rust type which this FIDL type decodes into.
§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read more§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.§impl ValueTypeMarker for StructAccess
impl ValueTypeMarker for StructAccess
§type Borrowed<'a> = &'a StructAccess
type Borrowed<'a> = &'a StructAccess
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read more§fn borrow(
value: &<StructAccess as TypeMarker>::Owned,
) -> <StructAccess as ValueTypeMarker>::Borrowed<'_>
fn borrow( value: &<StructAccess as TypeMarker>::Owned, ) -> <StructAccess as ValueTypeMarker>::Borrowed<'_>
Cheaply converts from
&Self::Owned
to Self::Borrowed
.impl Copy for StructAccess
impl Eq for StructAccess
impl Persistable for StructAccess
impl StructuralPartialEq for StructAccess
Auto Trait Implementations§
impl Freeze for StructAccess
impl RefUnwindSafe for StructAccess
impl Send for StructAccess
impl Sync for StructAccess
impl Unpin for StructAccess
impl UnwindSafe for StructAccess
Blanket Implementations§
§impl<T> Body for Twhere
T: Persistable,
impl<T> Body for Twhere
T: Persistable,
§type MarkerAtTopLevel = T
type MarkerAtTopLevel = T
The marker type to use when the body is at the top-level.
§type MarkerInResultUnion = T
type MarkerInResultUnion = T
The marker type to use when the body is nested in a result union.
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