/* call-seq:
 *   iseq.arg_opt_table => Array of Integer
 *
 * Returns optional argument table.  The value in the table represent
 * the index into the instruction sequence of the code to set the
 * optional argument.  The last element is the index of the start of the
 * code sequence.
 */
static VALUE iseq_arg_opt_table(VALUE self)
{
  rb_iseq_t *iseqdat = iseq_check(self);
  VALUE ary = rb_ary_new();
  int j;

  for(j = 0; j < iseqdat->arg_opts; ++j)
  {
    rb_ary_push(ary, INT2NUM(iseqdat->arg_opt_table[j]));
  }

  return ary;
}