class RuboCop::AST::ProcessedSource

def parser_class(ruby_version)

rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/MethodLength
def parser_class(ruby_version)
  case ruby_version
  when 1.9
    require 'parser/ruby19'
    Parser::Ruby19
  when 2.0
    require 'parser/ruby20'
    Parser::Ruby20
  when 2.1
    require 'parser/ruby21'
    Parser::Ruby21
  when 2.2
    require 'parser/ruby22'
    Parser::Ruby22
  when 2.3
    require 'parser/ruby23'
    Parser::Ruby23
  when 2.4
    require 'parser/ruby24'
    Parser::Ruby24
  when 2.5
    require 'parser/ruby25'
    Parser::Ruby25
  when 2.6
    require 'parser/ruby26'
    Parser::Ruby26
  when 2.7
    require 'parser/ruby27'
    Parser::Ruby27
  when 2.8, 3.0
    require 'parser/ruby30'
    Parser::Ruby30
  when 3.1
    require 'parser/ruby31'
    Parser::Ruby31
  when 3.2
    require 'parser/ruby32'
    Parser::Ruby32
  else
    raise ArgumentError,
          "RuboCop found unknown Ruby version: #{ruby_version.inspect}"
  end
end