summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-method/src/method.c
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2019-09-26 22:23:27 +0900
committerKOBAYASHI Shuji <[email protected]>2019-09-26 22:23:27 +0900
commitfeaf80d8996340bd0316fda72418b1abd774bd59 (patch)
tree43801fcc666b937f60086b0d51271bb28eab1cc0 /mrbgems/mruby-method/src/method.c
parent60cc46a92cf93f408dac22658c6a206e882e0e04 (diff)
downloadmruby-feaf80d8996340bd0316fda72418b1abd774bd59.tar.gz
mruby-feaf80d8996340bd0316fda72418b1abd774bd59.zip
Use type predicate macros instead of `mrb_type` if possible
For efficiency with `MRB_WORD_BOXING` (implement type predicate macros for all `enum mrb_vtype`).
Diffstat (limited to 'mrbgems/mruby-method/src/method.c')
-rw-r--r--mrbgems/mruby-method/src/method.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/mrbgems/mruby-method/src/method.c b/mrbgems/mruby-method/src/method.c
index d95ca1664..1557e60ca 100644
--- a/mrbgems/mruby-method/src/method.c
+++ b/mrbgems/mruby-method/src/method.c
@@ -14,10 +14,10 @@ method_object_alloc(mrb_state *mrb, struct RClass *mclass)
static void
bind_check(mrb_state *mrb, mrb_value recv, mrb_value owner)
{
- if (mrb_type(owner) != MRB_TT_MODULE &&
+ if (!mrb_module_p(owner) &&
mrb_class_ptr(owner) != mrb_obj_class(mrb, recv) &&
!mrb_obj_is_kind_of(mrb, recv, mrb_class_ptr(owner))) {
- if (mrb_type(owner) == MRB_TT_SCLASS) {
+ if (mrb_sclass_p(owner)) {
mrb_raise(mrb, E_TYPE_ERROR, "singleton method called for a different object");
} else {
mrb_raisef(mrb, E_TYPE_ERROR, "bind argument must be an instance of %v", owner);