summaryrefslogtreecommitdiffhomepage
path: root/src/class.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-02-15 13:19:21 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-02-15 13:19:21 +0900
commit517e9313bf6e6d4697095a9257598915ac857ff3 (patch)
tree2bb9f03ae32b402de58abeb17c6f9a137e3b7d18 /src/class.c
parent612d636b77edd7c0969e8850583aefd895638284 (diff)
downloadmruby-517e9313bf6e6d4697095a9257598915ac857ff3.tar.gz
mruby-517e9313bf6e6d4697095a9257598915ac857ff3.zip
Move #__id__ to BasicObject; ref #3417
Diffstat (limited to 'src/class.c')
-rw-r--r--src/class.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/class.c b/src/class.c
index f3146ca15..0922b3cff 100644
--- a/src/class.c
+++ b/src/class.c
@@ -2245,6 +2245,8 @@ mrb_mod_module_function(mrb_state *mrb, mrb_value mod)
return mod;
}
+/* implementation of __id__ */
+mrb_value mrb_obj_id_m(mrb_state *mrb, mrb_value self);
/* implementation of instance_eval */
mrb_value mrb_obj_instance_eval(mrb_state*, mrb_value);
@@ -2289,6 +2291,7 @@ mrb_init_class(mrb_state *mrb)
mrb_define_method(mrb, bob, "!", mrb_bob_not, MRB_ARGS_NONE());
mrb_define_method(mrb, bob, "==", mrb_obj_equal_m, MRB_ARGS_REQ(1)); /* 15.3.1.3.1 */
mrb_define_method(mrb, bob, "!=", mrb_obj_not_equal_m, MRB_ARGS_REQ(1));
+ mrb_define_method(mrb, bob, "__id__", mrb_obj_id_m, MRB_ARGS_NONE()); /* 15.3.1.3.3 */
mrb_define_method(mrb, bob, "__send__", mrb_f_send, MRB_ARGS_ANY()); /* 15.3.1.3.4 */
mrb_define_method(mrb, bob, "instance_eval", mrb_obj_instance_eval, MRB_ARGS_ANY()); /* 15.3.1.3.18 */