зеркало из https://github.com/github/ruby.git
adjust indent [ci skip]
* vm_insnhelper.c (vm_call_method_each_type): adjust indent of a block in switch. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
4905a62f5b
Коммит
97c977debf
|
@ -2250,44 +2250,44 @@ vm_call_method_each_type(rb_thread_t *th, rb_control_frame_t *cfp, struct rb_cal
|
||||||
return vm_call_zsuper(th, cfp, calling, ci, cc, RCLASS_ORIGIN(cc->me->owner));
|
return vm_call_zsuper(th, cfp, calling, ci, cc, RCLASS_ORIGIN(cc->me->owner));
|
||||||
|
|
||||||
case VM_METHOD_TYPE_REFINED: {
|
case VM_METHOD_TYPE_REFINED: {
|
||||||
const rb_cref_t *cref = rb_vm_get_cref(cfp->ep);
|
const rb_cref_t *cref = rb_vm_get_cref(cfp->ep);
|
||||||
VALUE refinements = cref ? CREF_REFINEMENTS(cref) : Qnil;
|
VALUE refinements = cref ? CREF_REFINEMENTS(cref) : Qnil;
|
||||||
VALUE refinement;
|
VALUE refinement;
|
||||||
const rb_callable_method_entry_t *ref_me;
|
const rb_callable_method_entry_t *ref_me;
|
||||||
|
|
||||||
refinement = find_refinement(refinements, cc->me->owner);
|
refinement = find_refinement(refinements, cc->me->owner);
|
||||||
|
|
||||||
if (NIL_P(refinement)) {
|
if (NIL_P(refinement)) {
|
||||||
goto no_refinement_dispatch;
|
goto no_refinement_dispatch;
|
||||||
}
|
}
|
||||||
ref_me = rb_callable_method_entry(refinement, ci->mid);
|
ref_me = rb_callable_method_entry(refinement, ci->mid);
|
||||||
|
|
||||||
if (ref_me) {
|
if (ref_me) {
|
||||||
if (cc->call == vm_call_super_method) {
|
if (cc->call == vm_call_super_method) {
|
||||||
const rb_control_frame_t *top_cfp = current_method_entry(th, cfp);
|
const rb_control_frame_t *top_cfp = current_method_entry(th, cfp);
|
||||||
const rb_callable_method_entry_t *top_me = rb_vm_frame_method_entry(top_cfp);
|
const rb_callable_method_entry_t *top_me = rb_vm_frame_method_entry(top_cfp);
|
||||||
if (top_me && rb_method_definition_eq(ref_me->def, top_me->def)) {
|
if (top_me && rb_method_definition_eq(ref_me->def, top_me->def)) {
|
||||||
goto no_refinement_dispatch;
|
goto no_refinement_dispatch;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cc->me = ref_me;
|
cc->me = ref_me;
|
||||||
if (ref_me->def->type != VM_METHOD_TYPE_REFINED) {
|
if (ref_me->def->type != VM_METHOD_TYPE_REFINED) {
|
||||||
return vm_call_method(th, cfp, calling, ci, cc);
|
return vm_call_method(th, cfp, calling, ci, cc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
cc->me = NULL;
|
cc->me = NULL;
|
||||||
return vm_call_method_nome(th, cfp, calling, ci, cc);
|
return vm_call_method_nome(th, cfp, calling, ci, cc);
|
||||||
}
|
}
|
||||||
|
|
||||||
no_refinement_dispatch:
|
no_refinement_dispatch:
|
||||||
if (cc->me->def->body.refined.orig_me) {
|
if (cc->me->def->body.refined.orig_me) {
|
||||||
cc->me = refined_method_callable_without_refinement(cc->me);
|
cc->me = refined_method_callable_without_refinement(cc->me);
|
||||||
return vm_call_method(th, cfp, calling, ci, cc);
|
return vm_call_method(th, cfp, calling, ci, cc);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
return vm_call_zsuper(th, cfp, calling, ci, cc, cc->me->owner);
|
return vm_call_zsuper(th, cfp, calling, ci, cc, cc->me->owner);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче