pub trait Api {
// Provided methods
fn add_function(
&self,
) -> unsafe extern "C" fn(Option<unsafe extern "C" fn(*mut *mut c_void) -> i32>, *const u8, *mut *const u8) -> i32 { ... }
fn get_arg_string(&self) -> unsafe extern "C" fn(i32) -> *const u8 { ... }
}