From ff710487b7047f2689af421a9a650c77c704ee77 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Fri, 5 Apr 2013 04:25:00 +0900 Subject: raise NotImplementedError from Module.constants (15.2.2.3.1); close #1125 --- src/class.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/class.c') diff --git a/src/class.c b/src/class.c index 377503c39..880f0c452 100644 --- a/src/class.c +++ b/src/class.c @@ -1747,6 +1747,12 @@ mrb_mod_remove_const(mrb_state *mrb, mrb_value mod) return val; } +static mrb_value +mrb_mod_s_constants(mrb_state *mrb, mrb_value mod) +{ + mrb_raise(mrb, E_NOTIMP_ERROR, "Module.constants not implemented"); +} + static mrb_value mrb_mod_eqq(mrb_state *mrb, mrb_value mod) { @@ -1834,6 +1840,7 @@ mrb_init_class(mrb_state *mrb) mrb_define_method(mrb, mod, "define_method", mod_define_method, ARGS_REQ(1)); mrb_define_method(mrb, mod, "class_variables", mrb_mod_class_variables, ARGS_NONE()); /* 15.2.2.4.19 */ mrb_define_method(mrb, mod, "===", mrb_mod_eqq, ARGS_REQ(1)); + mrb_define_class_method(mrb, mod, "constants", mrb_mod_s_constants, ARGS_ANY()); /* 15.2.2.3.1 */ mrb_undef_method(mrb, cls, "append_features"); mrb_undef_method(mrb, cls, "extend_object"); -- cgit v1.2.3