class RuboCop::AST::NodePattern::Compiler

def insure_same_captures(enum, what)

def insure_same_captures(enum, what)
  return to_enum __method__, enum, what unless block_given?
  captures_before = captures_after = nil
  enum.each do
    captures_before ||= @captures
    @captures = captures_before
    yield
    captures_after ||= @captures
    fail_due_to("each #{what} must have same # of captures") if captures_after != @captures
  end
end