[][src]Enum wasmtime_runtime::Trap

pub enum Trap {
    User(Box<dyn Error + Send + Sync>),
    Jit {
        pc: usize,
        backtrace: Backtrace,
        maybe_interrupted: bool,
    },
    Wasm {
        trap_code: TrapCode,
        backtrace: Backtrace,
    },
    OOM {
        backtrace: Backtrace,
    },
}

Stores trace message with backtrace.

Variants

User(Box<dyn Error + Send + Sync>)

A user-raised trap through raise_user_trap.

Jit

A trap raised from jit code

Fields of Jit

pc: usize

The program counter in JIT code where this trap happened.

backtrace: Backtrace

Native stack backtrace at the time the trap occurred

maybe_interrupted: bool

An indicator for whether this may have been a trap generated from an interrupt, used for switching what would otherwise be a stack overflow trap to be an interrupt trap.

Wasm

A trap raised from a wasm libcall

Fields of Wasm

trap_code: TrapCode

Code of the trap.

backtrace: Backtrace

Native stack backtrace at the time the trap occurred

OOM

A trap indicating that the runtime was unable to allocate sufficient memory.

Fields of OOM

backtrace: Backtrace

Native stack backtrace at the time the OOM occurred

Implementations

impl Trap[src]

pub fn wasm(trap_code: TrapCode) -> Self[src]

Construct a new Wasm trap with the given source location and trap code.

Internally saves a backtrace when constructed.

pub fn oom() -> Self[src]

Construct a new OOM trap with the given source location and trap code.

Internally saves a backtrace when constructed.

Trait Implementations

impl Debug for Trap[src]

Auto Trait Implementations

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<T> From<T> for T[src]

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

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.