wasmtime_environ/stack_switching.rs
1//! This module contains basic type definitions used by the implementation of
2//! the stack switching proposal.
3
4/// Discriminant of variant `Absent` in
5/// `wasmtime::runtime::vm::VMStackChain`.
6pub const STACK_CHAIN_ABSENT_DISCRIMINANT: usize = 0;
7/// Discriminant of variant `InitialStack` in
8/// `wasmtime::runtime::vm::VMStackChain`.
9pub const STACK_CHAIN_INITIAL_STACK_DISCRIMINANT: usize = 1;
10/// Discriminant of variant `Continiation` in
11/// `wasmtime::runtime::vm::VMStackChain`.
12pub const STACK_CHAIN_CONTINUATION_DISCRIMINANT: usize = 2;
13
14/// Discriminant of variant `Fresh` in
15/// `runtime::vm::VMStackState`.
16pub const STACK_STATE_FRESH_DISCRIMINANT: u32 = 0;
17/// Discriminant of variant `Running` in
18/// `runtime::vm::VMStackState`.
19pub const STACK_STATE_RUNNING_DISCRIMINANT: u32 = 1;
20/// Discriminant of variant `Parent` in
21/// `runtime::vm::VMStackState`.
22pub const STACK_STATE_PARENT_DISCRIMINANT: u32 = 2;
23/// Discriminant of variant `Suspended` in
24/// `runtime::vm::VMStackState`.
25pub const STACK_STATE_SUSPENDED_DISCRIMINANT: u32 = 3;
26/// Discriminant of variant `Returned` in
27/// `runtime::vm::VMStackState`.
28pub const STACK_STATE_RETURNED_DISCRIMINANT: u32 = 4;
29
30/// Discriminant of variant `Return` in
31/// `runtime::vm::ControlEffect`.
32pub const CONTROL_EFFECT_RETURN_DISCRIMINANT: u32 = 0;
33/// Discriminant of variant `Resume` in
34/// `runtime::vm::ControlEffect`.
35pub const CONTROL_EFFECT_RESUME_DISCRIMINANT: u32 = 1;
36/// Discriminant of variant `Suspend` in
37/// `runtime::vm::ControlEffect`.
38pub const CONTROL_EFFECT_SUSPEND_DISCRIMINANT: u32 = 2;
39/// Discriminant of variant `Switch` in
40/// `runtime::vm::ControlEffect`.
41pub const CONTROL_EFFECT_SWITCH_DISCRIMINANT: u32 = 3;