pub unsafe extern "C" fn mrb_protect( mrb: *mut mrb_state, body: mrb_func_t, data: mrb_value, state: *mut mrb_bool, ) -> mrb_value