hash.c (mrb_gc_mark_hash_size): unify with mrb_gc_mark_hash

This commit is contained in:
Yukihiro "Matz" Matsumoto
2024-03-14 11:52:25 +09:00
parent 63900814b9
commit 2cb3f1d9e5
3 changed files with 3 additions and 10 deletions
+1 -2
View File
@@ -80,8 +80,7 @@ void mrb_gc_free_mt(mrb_state*, struct RClass*);
/* hash */
size_t mrb_hash_memsize(mrb_value obj);
void mrb_gc_mark_hash(mrb_state*, struct RHash*);
size_t mrb_gc_mark_hash_size(mrb_state*, struct RHash*);
size_t mrb_gc_mark_hash(mrb_state*, struct RHash*);
void mrb_gc_free_hash(mrb_state*, struct RHash*);
/* irep */
+1 -2
View File
@@ -675,8 +675,7 @@ gc_mark_children(mrb_state *mrb, mrb_gc *gc, struct RBasic *obj)
case MRB_TT_HASH:
children += mrb_gc_mark_iv(mrb, (struct RObject*)obj);
mrb_gc_mark_hash(mrb, (struct RHash*)obj);
children += mrb_gc_mark_hash_size(mrb, (struct RHash*)obj);
children += mrb_gc_mark_hash(mrb, (struct RHash*)obj);
break;
case MRB_TT_STRING:
+1 -6
View File
@@ -1072,18 +1072,13 @@ h_replace(mrb_state *mrb, struct RHash *h, struct RHash *orig_h)
}
}
void
size_t
mrb_gc_mark_hash(mrb_state *mrb, struct RHash *h)
{
h_each(h, entry, {
mrb_gc_mark_value(mrb, entry->key);
mrb_gc_mark_value(mrb, entry->val);
});
}
size_t
mrb_gc_mark_hash_size(mrb_state *mrb, struct RHash *h)
{
return h_size(h) * 2;
}