summaryrefslogtreecommitdiffhomepage
path: root/src/error.c
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-04-09 18:23:11 +0900
committerKOBAYASHI Shuji <[email protected]>2019-04-09 18:23:11 +0900
commite3beef065c2de80a843f329599b424676d83086c (patch)
tree0c54fbf5e4f25febbc3bcf547427ba9c238b54ce /src/error.c
parentec1688807ef301483321919778b2ccb578822767 (diff)
downloadmruby-e3beef065c2de80a843f329599b424676d83086c.tar.gz
mruby-e3beef065c2de80a843f329599b424676d83086c.zip
Extract frozen checking to function
Diffstat (limited to 'src/error.c')
-rw-r--r--src/error.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/error.c b/src/error.c
index e69812dda..4c1b67c99 100644
--- a/src/error.c
+++ b/src/error.c
@@ -484,6 +484,13 @@ mrb_no_method_error(mrb_state *mrb, mrb_sym id, mrb_value args, char const* fmt,
mrb_exc_raise(mrb, exc);
}
+MRB_API mrb_noreturn void
+mrb_frozen_error(mrb_state *mrb, void *frozen_obj)
+{
+ mrb_raisef(mrb, E_FROZEN_ERROR, "can't modify frozen %S",
+ mrb_obj_value(mrb_class(mrb, mrb_obj_value(frozen_obj))));
+}
+
void
mrb_init_exception(mrb_state *mrb)
{