# File lib/gauntlet_parser.rb, line 55
  def parse(name)
    puts "GEM: #{name}"

    @result = {}

    if ENV.include?('FAST')
      total_size = Dir["**/*.rb"].map(&File.method(:size)).reduce(:+)
      if total_size > 300_000
        puts "Skip."
        return
      end
    end

    Dir["**/*.rb"].each do |file|
      next if File.directory? file

      try(Parser::Ruby20, RUBY20, file) do
        puts "Trying 1.9:"
        try(Parser::Ruby19, RUBY19, file, show_ok: true) do
          puts "Trying 1.8:"
          try(Parser::Ruby18, RUBY18, file, show_ok: true) do
            puts "Invalid syntax."
          end
        end
      end
    end

    @result
  end