[−][src]Struct rustc_middle::mir::interpret::InitMask

pub struct InitMask {
    blocks: Vec<u64>,
    len: Size,
}

A bitmask where each bit refers to the byte with the same index. If the bit is true, the byte is initialized. If it is false the byte is uninitialized.

Fields

blocks: Vec<u64>len: Size

Implementations

impl InitMask[src]

pub const BLOCK_SIZE: u64[src]

pub fn new(size: Size, state: bool) -> Self[src]

pub fn is_range_initialized(
    &self,
    start: Size,
    end: Size
) -> Result<(), Range<Size>>
[src]

Checks whether the range start..end (end-exclusive) is entirely initialized.

Returns Ok(()) if it's initialized. Otherwise returns a range of byte indexes for the first contiguous span of the uninitialized access.

pub fn set_range(&mut self, start: Size, end: Size, new_state: bool)[src]

pub fn set_range_inbounds(&mut self, start: Size, end: Size, new_state: bool)[src]

pub fn get(&self, i: Size) -> bool[src]

pub fn set(&mut self, i: Size, new_state: bool)[src]

pub(in mir::interpret::allocation) fn set_bit(
    &mut self,
    block: usize,
    bit: usize,
    new_state: bool
)
[src]

pub fn grow(&mut self, amount: Size, new_state: bool)[src]

Trait Implementations

impl Clone for InitMask[src]

impl Debug for InitMask[src]

impl<'tcx, __D: TyDecoder<'tcx>> Decodable<__D> for InitMask[src]

impl<'tcx, __E: TyEncoder<'tcx>> Encodable<__E> for InitMask[src]

impl Eq for InitMask[src]

impl Hash for InitMask[src]

impl<'__ctx> HashStable<StableHashingContext<'__ctx>> for InitMask[src]

impl Ord for InitMask[src]

impl PartialEq<InitMask> for InitMask[src]

impl PartialOrd<InitMask> for InitMask[src]

impl StructuralEq for InitMask[src]

impl StructuralPartialEq for InitMask[src]

Auto Trait Implementations

impl RefUnwindSafe for InitMask

impl Send for InitMask

impl Sync for InitMask

impl Unpin for InitMask

impl UnwindSafe for InitMask

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> MaybeResult<T> for T[src]

type Error = !

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> WithConstness for T[src]