diff options
Diffstat (limited to 'src/hash.c')
| -rw-r--r-- | src/hash.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/hash.c b/src/hash.c index a9ac79226..edff1ef1d 100644 --- a/src/hash.c +++ b/src/hash.c @@ -72,7 +72,7 @@ ht_hash_func(mrb_state *mrb, htable *t, mrb_value key) break; default: - hv = mrb_funcall(mrb, key, "hash", 0); + hv = mrb_funcall_id(mrb, key, MRB_SYM(hash), 0); h = (size_t)tt ^ (size_t)mrb_fixnum(hv); break; } @@ -856,7 +856,7 @@ hash_default(mrb_state *mrb, mrb_value hash, mrb_value key) { if (MRB_RHASH_DEFAULT_P(hash)) { if (MRB_RHASH_PROCDEFAULT_P(hash)) { - return mrb_funcall(mrb, RHASH_PROCDEFAULT(hash), "call", 2, hash, key); + return mrb_funcall_id(mrb, RHASH_PROCDEFAULT(hash), MRB_SYM(call), 2, hash, key); } else { return RHASH_IFNONE(hash); @@ -897,7 +897,7 @@ mrb_hash_default(mrb_state *mrb, mrb_value hash) if (MRB_RHASH_DEFAULT_P(hash)) { if (MRB_RHASH_PROCDEFAULT_P(hash)) { if (!given) return mrb_nil_value(); - return mrb_funcall(mrb, RHASH_PROCDEFAULT(hash), "call", 2, hash, key); + return mrb_funcall_id(mrb, RHASH_PROCDEFAULT(hash), MRB_SYM(call), 2, hash, key); } else { return RHASH_IFNONE(hash); @@ -1083,7 +1083,7 @@ mrb_hash_shift(mrb_state *mrb, mrb_value hash) if (MRB_RHASH_DEFAULT_P(hash)) { if (MRB_RHASH_PROCDEFAULT_P(hash)) { - return mrb_funcall(mrb, RHASH_PROCDEFAULT(hash), "call", 2, hash, mrb_nil_value()); + return mrb_funcall_id(mrb, RHASH_PROCDEFAULT(hash), MRB_SYM(call), 2, hash, mrb_nil_value()); } else { return RHASH_IFNONE(hash); |
