#![crate_type = "cdylib"]

#[link(wasm_import_module = "the-world")]
extern "C" {
    fn observe(ptr: *const u8, len: usize);
}

macro_rules! s {
    ( $( $f:ident -> $t:ty );* $(;)* ) => {
        $(
            #[link(wasm_import_module = "the-world")]
            extern "C" {
                fn $f() -> $t;
            }
            let s = $f().to_string();
            observe(s.as_ptr(), s.len());
        )*
    };
}

#[no_mangle]
pub unsafe extern "C" fn foo() {
    s! {
        get_u8 -> u8;
        get_i8 -> i8;
        get_u16 -> u16;
        get_i16 -> i16;
        get_u32 -> u32;
        get_i32 -> i32;
        get_u64 -> u64;
        get_i64 -> i64;
        get_usize -> usize;
        get_isize -> isize;
    }
}
