summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2021-04-22 16:46:16 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2021-04-22 17:01:33 +0900
commit1a82bab1b04a4e55cd802af2b54d84a1ac4c5a79 (patch)
treea3cd232470d4b93cda7dd53328717a70cf635230
parent91c4ac8d664a3566f7473a58c7f3421ce878198c (diff)
downloadmruby-1a82bab1b04a4e55cd802af2b54d84a1ac4c5a79.tar.gz
mruby-1a82bab1b04a4e55cd802af2b54d84a1ac4c5a79.zip
error.h: rename `mrb_protect_raw` to `mrb_protect_error`; #5415
- `_raw` does not describe the nature of the function - the function protect errors during C function execution
-rw-r--r--include/mruby/error.h15
-rw-r--r--mrbgems/mruby-error/src/exception.c6
-rw-r--r--src/vm.c2
3 files changed, 11 insertions, 12 deletions
diff --git a/include/mruby/error.h b/include/mruby/error.h
index a715eb0b6..20ca38586 100644
--- a/include/mruby/error.h
+++ b/include/mruby/error.h
@@ -104,6 +104,13 @@ mrb_break_tag_set(struct RBreak *brk, uint32_t tag)
/**
* Protect
*
+ */
+typedef mrb_value mrb_protect_error_func(mrb_state *mrb, void *userdata);
+MRB_API mrb_value mrb_protect_error(mrb_state *mrb, mrb_protect_error_func *body, void *userdata, mrb_bool *error);
+
+/**
+ * Protect (takes mrb_value for body argument)
+ *
* Implemented in the mruby-error mrbgem
*/
MRB_API mrb_value mrb_protect(mrb_state *mrb, mrb_func_t body, mrb_value data, mrb_bool *state);
@@ -133,14 +140,6 @@ MRB_API mrb_value mrb_rescue_exceptions(mrb_state *mrb, mrb_func_t body, mrb_val
mrb_func_t rescue, mrb_value r_data,
mrb_int len, struct RClass **classes);
-typedef mrb_value mrb_protect_raw_func(mrb_state *mrb, void *userdata);
-
-/**
- * This API function behaves like `mrb_protect()`.
- * The advantage is that it avoids objectifying the user data.
- */
-MRB_API mrb_value mrb_protect_raw(mrb_state *mrb, mrb_protect_raw_func *body, void *userdata, mrb_bool *error);
-
MRB_END_DECL
#endif /* MRUBY_ERROR_H */
diff --git a/mrbgems/mruby-error/src/exception.c b/mrbgems/mruby-error/src/exception.c
index cbc4835d8..ca26b8819 100644
--- a/mrbgems/mruby-error/src/exception.c
+++ b/mrbgems/mruby-error/src/exception.c
@@ -17,7 +17,7 @@ MRB_API mrb_value
mrb_protect(mrb_state *mrb, mrb_func_t body, mrb_value data, mrb_bool *state)
{
struct protect_data protect_data = { body, data };
- return mrb_protect_raw(mrb, protect_body, &protect_data, state);
+ return mrb_protect_error(mrb, protect_body, &protect_data, state);
}
MRB_API mrb_value
@@ -26,7 +26,7 @@ mrb_ensure(mrb_state *mrb, mrb_func_t body, mrb_value b_data, mrb_func_t ensure,
int ai = mrb_gc_arena_save(mrb);
struct protect_data protect_data = { body, b_data };
mrb_bool error;
- mrb_value result = mrb_protect_raw(mrb, protect_body, &protect_data, &error);
+ mrb_value result = mrb_protect_error(mrb, protect_body, &protect_data, &error);
ensure(mrb, e_data);
mrb_gc_arena_restore(mrb, ai);
mrb_gc_protect(mrb, result);
@@ -50,7 +50,7 @@ mrb_rescue_exceptions(mrb_state *mrb, mrb_func_t body, mrb_value b_data, mrb_fun
int ai = mrb_gc_arena_save(mrb);
struct protect_data protect_data = { body, b_data };
mrb_bool error;
- mrb_value result = mrb_protect_raw(mrb, protect_body, &protect_data, &error);
+ mrb_value result = mrb_protect_error(mrb, protect_body, &protect_data, &error);
if (error) {
mrb_bool error_matched = FALSE;
for (mrb_int i = 0; i < len; ++i) {
diff --git a/src/vm.c b/src/vm.c
index 0665634ed..b1f23555d 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -307,7 +307,7 @@ cipop(mrb_state *mrb)
}
MRB_API mrb_value
-mrb_protect_raw(mrb_state *mrb, mrb_protect_raw_func *body, void *userdata, mrb_bool *error)
+mrb_protect_error(mrb_state *mrb, mrb_protect_error_func *body, void *userdata, mrb_bool *error)
{
struct mrb_jmpbuf *prev_jmp = mrb->jmp;
struct mrb_jmpbuf c_jmp;