Enum miri::concurrency::data_race::NaWriteType
source · pub enum NaWriteType {
Allocate,
Write,
Retag,
Deallocate,
}
Expand description
Type of a non-atomic write operation: allocating memory, non-atomic writes, and deallocating memory are all treated as writes for the purpose of the data-race detector.
Variants§
Allocate
Allocate memory.
Write
Standard unsynchronized write.
Retag
Deallocate
Deallocate memory.
Note that when memory is deallocated first, later non-atomic accesses
will be reported as use-after-free, not as data races.
(Same for Allocate
above.)
Implementations§
source§impl NaWriteType
impl NaWriteType
fn description(self) -> &'static str
Trait Implementations§
source§impl Clone for NaWriteType
impl Clone for NaWriteType
source§fn clone(&self) -> NaWriteType
fn clone(&self) -> NaWriteType
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 Debug for NaWriteType
impl Debug for NaWriteType
source§impl PartialEq for NaWriteType
impl PartialEq for NaWriteType
impl Copy for NaWriteType
impl Eq for NaWriteType
impl StructuralPartialEq for NaWriteType
Auto Trait Implementations§
impl Freeze for NaWriteType
impl RefUnwindSafe for NaWriteType
impl Send for NaWriteType
impl Sync for NaWriteType
impl Unpin for NaWriteType
impl UnwindSafe for NaWriteType
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§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
)Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
Allocate
: 0 bytesWrite
: 0 bytesRetag
: 0 bytesDeallocate
: 0 bytes