use std::path::Path;
use wasmtime::{Engine, Linker, Store};
use wasmtime_wasi::WasiCtxBuilder;
pub fn run_wasm<P: AsRef<Path>>(wasm: P) -> wasmtime::Result<()> {
let engine = Engine::default();
let mut linker = Linker::new(&engine);
wasmtime_wasi::add_to_linker(&mut linker, |s| s)?;
let wasi = WasiCtxBuilder::new().inherit_stdio().inherit_args()?.inherit_env()?.build();
let mut store = Store::new(&engine, wasi);
let input = wasmtime::Module::from_file(&engine, wasm)?;
let instance = linker.instantiate(&mut store, &input)?;
Ok(())
}
#[test]
fn test() {
run_wasm(r#"C:\Users\Dell\CLionProjects\nyar-vm\projects\nyar-wasm\target\release\valkyrie\hello.wasm"#).unwrap();
}