Enum rustc_borrowck::ReadOrWrite [−][src]
pub(crate) enum ReadOrWrite {
Read(ReadKind),
Write(WriteKind),
Reservation(WriteKind),
Activation(WriteKind, BorrowIndex),
}
Expand description
Kind of access to a value: read or write (For informational purposes only)
Variants
Read(ReadKind)
From the RFC: “A read means that the existing data may be read, but will not be changed.”
Tuple Fields of Read
0: ReadKind
Write(WriteKind)
From the RFC: “A write means that the data may be mutated to new values or otherwise invalidated (for example, it could be de-initialized, as in a move operation).
Tuple Fields of Write
0: WriteKind
Reservation(WriteKind)
For two-phase borrows, we distinguish a reservation (which is treated like a Read) from an activation (which is treated like a write), and each of those is furthermore distinguished from Reads/Writes above.
Tuple Fields of Reservation
0: WriteKind
Activation(WriteKind, BorrowIndex)
Tuple Fields of Activation
0: WriteKind
1: BorrowIndex
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ReadOrWrite
impl Send for ReadOrWrite
impl Sync for ReadOrWrite
impl Unpin for ReadOrWrite
impl UnwindSafe for ReadOrWrite
Blanket Implementations
Mutably borrows from an owned value. Read more
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: 8 bytes
Size for each variant:
Read
: 1 byteWrite
: 1 byteReservation
: 1 byteActivation
: 7 bytes