diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-10 07:52:03 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-10 07:52:03 +0000 |
commit | d4662d49d925484f673969693f47cd4ac4338206 (patch) | |
tree | 1496368b6ea3c8bbf2fed3a5af0191842cb12efa | |
parent | e86a6e25146fa94aa2ce3f22f229ee8d1a4e57e3 (diff) | |
download | ruby-d4662d49d925484f673969693f47cd4ac4338206.tar.gz |
* compile.c (rb_iseq_compile): formatted if/else to switch statement.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12730 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | compile.c | 36 |
2 files changed, 24 insertions, 16 deletions
@@ -1,3 +1,7 @@ +Tue Jul 10 16:52:01 2007 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * compile.c (rb_iseq_compile): formatted if/else to switch statement. + Tue Jul 10 15:57:53 2007 Nobuyoshi Nakada <nobu@ruby-lang.org> * bootstraptest/test_flip.rb: new test for flip-flop operator. @@ -151,7 +151,8 @@ rb_iseq_compile(VALUE self, NODE *node) set_local_table(iseq, node->nd_tbl); set_arguments(iseq, ret, node->nd_args); - if (iseq->type == ISEQ_TYPE_BLOCK) { + switch (iseq->type) { + case ISEQ_TYPE_BLOCK: { LABEL *start = iseq->compile_data->start_label = NEW_LABEL(0); LABEL *end = iseq->compile_data->end_label = NEW_LABEL(0); @@ -162,21 +163,24 @@ rb_iseq_compile(VALUE self, NODE *node) /* wide range catch handler must put at last */ ADD_CATCH_ENTRY(CATCH_TYPE_REDO, start, end, 0, start); ADD_CATCH_ENTRY(CATCH_TYPE_NEXT, start, end, 0, end); - } - else { - if (iseq->type == ISEQ_TYPE_CLASS) { - ADD_TRACE(ret, nd_line(node), RUBY_EVENT_CLASS); - COMPILE(ret, "scoped node", node->nd_body); - ADD_TRACE(ret, nd_line(node), RUBY_EVENT_END); - } - else if (iseq->type == ISEQ_TYPE_METHOD) { - ADD_TRACE(ret, nd_line(node), RUBY_EVENT_CALL); - COMPILE(ret, "scoped node", node->nd_body); - ADD_TRACE(ret, nd_line(node), RUBY_EVENT_RETURN); - } - else { - COMPILE(ret, "scoped node", node->nd_body); - } + break; + } + case ISEQ_TYPE_CLASS: { + ADD_TRACE(ret, nd_line(node), RUBY_EVENT_CLASS); + COMPILE(ret, "scoped node", node->nd_body); + ADD_TRACE(ret, nd_line(node), RUBY_EVENT_END); + break; + } + case ISEQ_TYPE_METHOD: { + ADD_TRACE(ret, nd_line(node), RUBY_EVENT_CALL); + COMPILE(ret, "scoped node", node->nd_body); + ADD_TRACE(ret, nd_line(node), RUBY_EVENT_RETURN); + break; + } + default: { + COMPILE(ret, "scoped node", node->nd_body); + break; + } } } else { |