Commit a725cb90 authored by Blaž Hrastnik's avatar Blaž Hrastnik

Include prepended methods in the instance_methods list.

parent 47264bf2
...@@ -653,13 +653,19 @@ mrb_class_instance_method_list(mrb_state *mrb, mrb_bool recur, struct RClass* kl ...@@ -653,13 +653,19 @@ mrb_class_instance_method_list(mrb_state *mrb, mrb_bool recur, struct RClass* kl
{ {
khint_t i; khint_t i;
mrb_value ary; mrb_value ary;
mrb_bool prepended;
struct RClass* oldklass; struct RClass* oldklass;
khash_t(st)* set = kh_init(st, mrb); khash_t(st)* set = kh_init(st, mrb);
if (!recur && klass->origin != klass) {
klass = klass->origin;
prepended = 1;
}
oldklass = 0; oldklass = 0;
while (klass && (klass != oldklass)) { while (klass && (klass != oldklass)) {
method_entry_loop(mrb, klass, set); method_entry_loop(mrb, klass, set);
if ((klass->tt == MRB_TT_ICLASS) || if ((klass->tt == MRB_TT_ICLASS && !prepended) ||
(klass->tt == MRB_TT_SCLASS)) { (klass->tt == MRB_TT_SCLASS)) {
} }
else { else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment