Struct rustc_mir_dataflow::value_analysis::PlaceIndex
source · pub struct PlaceIndex {
private: u32,
}Expand description
This index uniquely identifies a place.
Not every place has a PlaceIndex, and not every PlaceIndex correspondends to a tracked
place. However, every tracked place and all places along its projection have a PlaceIndex.
Fields
private: u32Implementations
sourceimpl PlaceIndex
impl PlaceIndex
sourcepub const MAX_AS_U32: u32 = 4_294_967_040u32
pub const MAX_AS_U32: u32 = 4_294_967_040u32
Maximum value the index can take, as a u32.
sourcepub const fn from_usize(value: usize) -> Self
pub const fn from_usize(value: usize) -> Self
sourcepub const unsafe fn from_u32_unchecked(value: u32) -> Self
pub const unsafe fn from_u32_unchecked(value: u32) -> Self
Creates a new index from a given u32.
Safety
The provided value must be less than or equal to the maximum value for the newtype. Providing a value outside this range is undefined due to layout restrictions.
Prefer using from_u32.
Trait Implementations
sourceimpl Add<usize> for PlaceIndex
impl Add<usize> for PlaceIndex
sourceimpl Clone for PlaceIndex
impl Clone for PlaceIndex
sourcefn clone(&self) -> PlaceIndex
fn clone(&self) -> PlaceIndex
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresourceimpl Debug for PlaceIndex
impl Debug for PlaceIndex
sourceimpl From<PlaceIndex> for u32
impl From<PlaceIndex> for u32
sourcefn from(v: PlaceIndex) -> u32
fn from(v: PlaceIndex) -> u32
Converts to this type from the input type.
sourceimpl From<PlaceIndex> for usize
impl From<PlaceIndex> for usize
sourcefn from(v: PlaceIndex) -> usize
fn from(v: PlaceIndex) -> usize
Converts to this type from the input type.
sourceimpl From<u32> for PlaceIndex
impl From<u32> for PlaceIndex
sourceimpl From<usize> for PlaceIndex
impl From<usize> for PlaceIndex
sourceimpl Hash for PlaceIndex
impl Hash for PlaceIndex
sourceimpl Idx for PlaceIndex
impl Idx for PlaceIndex
sourceimpl Ord for PlaceIndex
impl Ord for PlaceIndex
sourcefn cmp(&self, other: &PlaceIndex) -> Ordering
fn cmp(&self, other: &PlaceIndex) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialEq<PlaceIndex> for PlaceIndex
impl PartialEq<PlaceIndex> for PlaceIndex
sourcefn eq(&self, other: &PlaceIndex) -> bool
fn eq(&self, other: &PlaceIndex) -> bool
sourceimpl PartialOrd<PlaceIndex> for PlaceIndex
impl PartialOrd<PlaceIndex> for PlaceIndex
sourcefn partial_cmp(&self, other: &PlaceIndex) -> Option<Ordering>
fn partial_cmp(&self, other: &PlaceIndex) -> 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 moresourceimpl Step for PlaceIndex
impl Step for PlaceIndex
sourcefn steps_between(start: &Self, end: &Self) -> Option<usize>
fn steps_between(start: &Self, end: &Self) -> Option<usize>
🔬This is a nightly-only experimental API. (
step_trait)sourcefn forward_checked(start: Self, u: usize) -> Option<Self>
fn forward_checked(start: Self, u: usize) -> Option<Self>
🔬This is a nightly-only experimental API. (
step_trait)sourcefn backward_checked(start: Self, u: usize) -> Option<Self>
fn backward_checked(start: Self, u: usize) -> Option<Self>
🔬This is a nightly-only experimental API. (
step_trait)sourcefn forward(start: Self, count: usize) -> Self
fn forward(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait)sourceunsafe fn forward_unchecked(start: Self, count: usize) -> Self
unsafe fn forward_unchecked(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait)sourcefn backward(start: Self, count: usize) -> Self
fn backward(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait)sourceunsafe fn backward_unchecked(start: Self, count: usize) -> Self
unsafe fn backward_unchecked(start: Self, count: usize) -> Self
🔬This is a nightly-only experimental API. (
step_trait)impl Copy for PlaceIndex
impl Eq for PlaceIndex
impl StructuralEq for PlaceIndex
impl StructuralPartialEq for PlaceIndex
impl TrustedStep for PlaceIndex
Auto Trait Implementations
impl RefUnwindSafe for PlaceIndex
impl Send for PlaceIndex
impl Sync for PlaceIndex
impl Unpin for PlaceIndex
impl UnwindSafe for PlaceIndex
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
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: 4 bytes