pub enum OpAccess {
None,
Read,
CondRead,
Write,
CondWrite,
ReadWrite,
ReadCondWrite,
NoMemAccess,
}
Expand description
Operand, register and memory access
Variants
None
Nothing is read and nothing is written
Read
The value is read
CondRead
The value is sometimes read and sometimes not
Write
The value is completely overwritten
CondWrite
Conditional write, sometimes it’s written and sometimes it’s not modified
ReadWrite
The value is read and written
ReadCondWrite
The value is read and sometimes written
NoMemAccess
The memory operand doesn’t refer to memory (eg. LEA
instruction) or it’s an instruction that doesn’t read the data to a register or doesn’t write to the memory location, it just prefetches/invalidates it, eg. INVLPG
, PREFETCHNTA
, VGATHERPF0DPS
, etc. Some of those instructions still check if the code can access the memory location.
Implementations
sourceimpl OpAccess
impl OpAccess
sourcepub fn values(
) -> impl Iterator<Item = OpAccess> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
pub fn values(
) -> impl Iterator<Item = OpAccess> + DoubleEndedIterator + ExactSizeIterator + FusedIterator
Iterates over all OpAccess
enum values
Trait Implementations
sourceimpl<'de> Deserialize<'de> for OpAccess
impl<'de> Deserialize<'de> for OpAccess
sourcefn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Ord for OpAccess
impl Ord for OpAccess
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialOrd<OpAccess> for OpAccess
impl PartialOrd<OpAccess> for OpAccess
sourcefn partial_cmp(&self, other: &OpAccess) -> Option<Ordering>
fn partial_cmp(&self, other: &OpAccess) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Copy for OpAccess
impl Eq for OpAccess
impl StructuralEq for OpAccess
impl StructuralPartialEq for OpAccess
Auto Trait Implementations
impl RefUnwindSafe for OpAccess
impl Send for OpAccess
impl Sync for OpAccess
impl Unpin for OpAccess
impl UnwindSafe for OpAccess
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more