summaryrefslogtreecommitdiff
path: root/hash.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-05-31 19:17:18 (GMT)
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-05-31 19:17:18 (GMT)
commit258131446c394684678736507723ab404c892301 (patch)
treed5fec98a61ee1ad347f10c824c95490a5e98b6f7 /hash.c
parent3d410dde5c35e60fcfdcb3640ab3edcb40550055 (diff)
* class.c (rb_class_has_methods): added to reduce depenedency
to internal class data structure. * internal.h: ditto. * hash.c (has_extra_methods): use added function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'hash.c')
-rw-r--r--hash.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/hash.c b/hash.c
index bd099ce..60e9807 100644
--- a/hash.c
+++ b/hash.c
@@ -37,8 +37,7 @@ has_extra_methods(VALUE klass)
const VALUE base = rb_cHash;
VALUE c = klass;
while (c != base) {
- st_table *mtbl = RCLASS_M_TBL(c);
- if (mtbl && mtbl->num_entries) return klass;
+ if (rb_class_has_methods(c)) return klass;
c = RCLASS_SUPER(c);
}
return 0;