pub unsafe extern "C" fn PL_register_foreign_in_module(
    module: *const i8,
    name: *const i8,
    arity: i32,
    func: Option<unsafe extern "C" fn() -> usize>,
    flags: i32
    ...
) -> i32