wasmtime_wasi/host/exit.rs
1use crate::{bindings::cli::exit, I32Exit, WasiImpl, WasiView};
2
3impl<T> exit::Host for WasiImpl<T>
4where
5 T: WasiView,
6{
7 fn exit(&mut self, status: Result<(), ()>) -> anyhow::Result<()> {
8 let status = match status {
9 Ok(()) => 0,
10 Err(()) => 1,
11 };
12 Err(anyhow::anyhow!(I32Exit(status)))
13 }
14
15 fn exit_with_code(&mut self, status_code: u8) -> anyhow::Result<()> {
16 Err(anyhow::anyhow!(I32Exit(status_code.into())))
17 }
18}