diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/kernel.c | 65 |
1 files changed, 28 insertions, 37 deletions
diff --git a/src/kernel.c b/src/kernel.c index 268adedf9..7bcbd6518 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -93,24 +93,18 @@ static mrb_value mrb_obj_equal_m(mrb_state *mrb, mrb_value self) { mrb_value arg; - mrb_bool eql_p; mrb_get_args(mrb, "o", &arg); - eql_p = mrb_obj_equal(mrb, self, arg); - - return mrb_bool_value(eql_p); + return mrb_bool_value(mrb_obj_equal(mrb, self, arg)); } static mrb_value mrb_obj_not_equal_m(mrb_state *mrb, mrb_value self) { mrb_value arg; - mrb_bool eql_p; mrb_get_args(mrb, "o", &arg); - eql_p = mrb_equal(mrb, self, arg); - - return mrb_bool_value(!eql_p); + return mrb_bool_value(!mrb_equal(mrb, self, arg)); } /* 15.3.1.3.2 */ @@ -126,12 +120,9 @@ static mrb_value mrb_equal_m(mrb_state *mrb, mrb_value self) { mrb_value arg; - mrb_bool equal_p; mrb_get_args(mrb, "o", &arg); - equal_p = mrb_equal(mrb, self, arg); - - return mrb_bool_value(equal_p); + return mrb_bool_value(mrb_equal(mrb, self, arg)); } /* 15.3.1.3.3 */ @@ -276,21 +267,21 @@ static void init_copy(mrb_state *mrb, mrb_value dest, mrb_value obj) { switch (mrb_type(obj)) { - case MRB_TT_CLASS: - case MRB_TT_MODULE: - copy_class(mrb, dest, obj); - /* fall through */ - case MRB_TT_OBJECT: - case MRB_TT_SCLASS: - case MRB_TT_HASH: - case MRB_TT_DATA: - mrb_iv_copy(mrb, dest, obj); - break; - - default: - break; - } - mrb_funcall(mrb, dest, "initialize_copy", 1, obj); + case MRB_TT_CLASS: + case MRB_TT_MODULE: + copy_class(mrb, dest, obj); + /* fall through */ + case MRB_TT_OBJECT: + case MRB_TT_SCLASS: + case MRB_TT_HASH: + case MRB_TT_DATA: + mrb_iv_copy(mrb, dest, obj); + break; + + default: + break; + } + mrb_funcall(mrb, dest, "initialize_copy", 1, obj); } /* 15.3.1.3.8 */ @@ -326,7 +317,7 @@ mrb_obj_clone(mrb_state *mrb, mrb_value self) mrb_value clone; if (mrb_special_const_p(self)) { - mrb_raisef(mrb, E_TYPE_ERROR, "can't clone %S", self); + mrb_raisef(mrb, E_TYPE_ERROR, "can't clone %S", self); } p = (struct RObject*)mrb_obj_alloc(mrb, mrb_type(self), mrb_obj_class(mrb, self)); p->c = mrb_singleton_class_clone(mrb, self); @@ -358,17 +349,17 @@ mrb_obj_clone(mrb_state *mrb, mrb_value self) mrb_value mrb_obj_dup(mrb_state *mrb, mrb_value obj) { - struct RBasic *p; - mrb_value dup; + struct RBasic *p; + mrb_value dup; - if (mrb_special_const_p(obj)) { - mrb_raisef(mrb, E_TYPE_ERROR, "can't dup %S", obj); - } - p = mrb_obj_alloc(mrb, mrb_type(obj), mrb_obj_class(mrb, obj)); - dup = mrb_obj_value(p); - init_copy(mrb, dup, obj); + if (mrb_special_const_p(obj)) { + mrb_raisef(mrb, E_TYPE_ERROR, "can't dup %S", obj); + } + p = mrb_obj_alloc(mrb, mrb_type(obj), mrb_obj_class(mrb, obj)); + dup = mrb_obj_value(p); + init_copy(mrb, dup, obj); - return dup; + return dup; } static mrb_value |
