#![allow(non_camel_case_types)]
pub const WASMTIME_PROT_READ: u32 = 1 << 0;
pub const WASMTIME_PROT_WRITE: u32 = 1 << 1;
pub const WASMTIME_PROT_EXEC: u32 = 1 << 2;
pub use WASMTIME_PROT_EXEC as PROT_EXEC;
pub use WASMTIME_PROT_READ as PROT_READ;
pub use WASMTIME_PROT_WRITE as PROT_WRITE;
pub type wasmtime_trap_handler_t =
extern "C" fn(ip: usize, fp: usize, has_faulting_addr: bool, faulting_addr: usize);
pub enum wasmtime_memory_image {}
extern "C" {
pub fn wasmtime_mmap_new(size: usize, prot_flags: u32, ret: &mut *mut u8) -> i32;
pub fn wasmtime_mmap_remap(addr: *mut u8, size: usize, prot_flags: u32) -> i32;
pub fn wasmtime_munmap(ptr: *mut u8, size: usize) -> i32;
pub fn wasmtime_mprotect(ptr: *mut u8, size: usize, prot_flags: u32) -> i32;
pub fn wasmtime_page_size() -> usize;
pub fn wasmtime_setjmp(
jmp_buf: *mut *const u8,
callback: extern "C" fn(*mut u8, *mut u8),
payload: *mut u8,
callee: *mut u8,
) -> i32;
pub fn wasmtime_longjmp(jmp_buf: *const u8) -> !;
pub fn wasmtime_init_traps(handler: wasmtime_trap_handler_t) -> i32;
pub fn wasmtime_memory_image_new(
ptr: *const u8,
len: usize,
ret: &mut *mut wasmtime_memory_image,
) -> i32;
pub fn wasmtime_memory_image_map_at(
image: *mut wasmtime_memory_image,
addr: *mut u8,
len: usize,
) -> i32;
pub fn wasmtime_memory_image_free(image: *mut wasmtime_memory_image);
pub fn wasmtime_tls_get() -> *mut u8;
pub fn wasmtime_tls_set(ptr: *mut u8);
}