Enum rustc_mir::interpret::InterpError[−][src]

pub enum InterpError<'tcx> {
    UndefinedBehavior(UndefinedBehaviorInfo<'tcx>),
    Unsupported(UnsupportedOpInfo),
    InvalidProgram(InvalidProgramInfo<'tcx>),
    ResourceExhaustion(ResourceExhaustionInfo),
    MachineStop(Box<dyn MachineStopType + 'static, Global>),
}

Variants

UndefinedBehavior(UndefinedBehaviorInfo<'tcx>)
Expand description

The program caused undefined behavior.

Unsupported(UnsupportedOpInfo)
Expand description

The program did something the interpreter does not support (some of these might be UB but the interpreter is not sure).

InvalidProgram(InvalidProgramInfo<'tcx>)
Expand description

The program was invalid (ill-typed, bad MIR, not sufficiently monomorphized, …).

ResourceExhaustion(ResourceExhaustionInfo)
Expand description

The program exhausted the interpreter’s resources (stack/heap too big, execution takes too long, …).

MachineStop(Box<dyn MachineStopType + 'static, Global>)
Expand description

Stop execution for a machine-controlled reason. This is never raised by the core engine itself.

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for InterpError<'tcx>

impl<'tcx> !Send for InterpError<'tcx>

impl<'tcx> !Sync for InterpError<'tcx>

impl<'tcx> Unpin for InterpError<'tcx>

impl<'tcx> !UnwindSafe for InterpError<'tcx>

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ToString for T where
    T: Display + ?Sized, 
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<T> WithConstness for T[src]

fn with_constness(self, constness: Constness) -> ConstnessAnd<Self>[src]

fn with_const(self) -> ConstnessAnd<Self>[src]

fn without_const(self) -> ConstnessAnd<Self>[src]