summaryrefslogtreecommitdiffhomepage
path: root/src/class.c
diff options
context:
space:
mode:
authorMax Anselm <[email protected]>2012-07-25 18:22:26 -0400
committerMax Anselm <[email protected]>2012-07-25 18:22:26 -0400
commitea259129993cf7eb6ffc0b8bb76719913fea314c (patch)
tree956b6d9fd49c12f31f955a0deb161bab69feb7c6 /src/class.c
parentec309c6fd7a8e177be4d1c5cd3cebfcf2088a52d (diff)
downloadmruby-ea259129993cf7eb6ffc0b8bb76719913fea314c.tar.gz
mruby-ea259129993cf7eb6ffc0b8bb76719913fea314c.zip
Undefine new for class rather than instance.
Applies to NilClass, TrueClass, FalseClass, Fixnum, and Float. Add mrb_undef_class_method for DRYness.
Diffstat (limited to 'src/class.c')
-rw-r--r--src/class.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/class.c b/src/class.c
index b8532cdcc..f0393c7ec 100644
--- a/src/class.c
+++ b/src/class.c
@@ -1307,6 +1307,12 @@ mrb_undef_method(mrb_state *mrb, struct RClass *c, const char *name)
undef_method(mrb, c, mrb_intern(mrb, name));
}
+void
+mrb_undef_class_method(mrb_state *mrb, struct RClass *c, const char *name)
+{
+ mrb_undef_method(mrb, mrb_class_ptr(mrb_singleton_class(mrb, mrb_obj_value(c))), name);
+}
+
mrb_value
mrb_mod_undef(mrb_state *mrb, mrb_value mod)
{