pub unsafe extern "C" fn rb_protect(
    arg1: Option<unsafe extern "C" fn(arg1: VALUE) -> VALUE>,
    arg2: VALUE,
    arg3: *mut c_int
) -> VALUE