mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-25 06:31:32 +00:00
Isolated emscripten in new lib
This commit is contained in:
15
lib/emscripten/src/varargs.rs
Normal file
15
lib/emscripten/src/varargs.rs
Normal file
@ -0,0 +1,15 @@
|
||||
use wasmer_runtime::Instance;
|
||||
use std::mem;
|
||||
|
||||
#[repr(transparent)]
|
||||
pub struct VarArgs {
|
||||
pub pointer: u32, // assuming 32bit wasm
|
||||
}
|
||||
|
||||
impl VarArgs {
|
||||
pub fn get<T: Sized>(&mut self, instance: &mut Instance) -> T {
|
||||
let ptr = instance.memory_offset_addr(0, self.pointer as usize);
|
||||
self.pointer += mem::size_of::<T>() as u32;
|
||||
unsafe { (ptr as *const T).read() }
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user