wasmer_types/stack/
trap.rs

1//! Types for traps.
2use crate::CodeOffset;
3use crate::TrapCode;
4use rkyv::{Archive, Deserialize as RkyvDeserialize, Serialize as RkyvSerialize};
5#[cfg(feature = "enable-serde")]
6use serde::{Deserialize, Serialize};
7
8/// Information about trap.
9#[cfg_attr(feature = "enable-serde", derive(Deserialize, Serialize))]
10#[cfg_attr(feature = "artifact-size", derive(loupe::MemoryUsage))]
11#[derive(RkyvSerialize, RkyvDeserialize, Archive, Clone, Copy, Debug, PartialEq, Eq)]
12#[rkyv(derive(Debug), compare(PartialEq))]
13pub struct TrapInformation {
14    /// The offset of the trapping instruction in native code. It is relative to the beginning of the function.
15    pub code_offset: CodeOffset,
16    /// Code of the trap.
17    pub trap_code: TrapCode,
18}