class Regexp::Expression::Subexpression

def each_expression_with_index(&block)

def each_expression_with_index(&block)
  each_with_index do |exp, index|
    block.call(exp, index)
    exp.each_expression_with_index(&block) unless exp.terminal?
  end
end