NODE_RETRY
どんどん行きましょう。retry。NODE_ITERのところで読んだように、retryは例外処理になります。常にthrowに変換しておしまい。
case NODE_RETRY:{ if (iseq->type == ISEQ_TYPE_BLOCK || iseq->type == ISEQ_TYPE_RESCUE) { ADD_INSN(ret, nd_line(node), putnil); ADD_INSN1(ret, nd_line(node), throw, INT2FIX(0x04) /* TAG_RETRY */ ); } else { COMPILE_ERROR(("Illegal retry")); } break; }