    # File lib/yard/rubygems/doc_manager.rb, line 9
      def run_yardoc(*args)
        args << '--quiet'
        args << '--backtrace' if Gem.configuration.backtrace
        unless File.file?(File.join(@spec.full_gem_path, '.yardopts'))
          args << @spec.require_paths
          if @spec.extra_rdoc_files.size > 0
            args << '-'
            args += @spec.extra_rdoc_files
          end
        end
        args = args.flatten.map {|arg| arg.to_s }

        old_pwd = Dir.pwd
        Dir.chdir(@spec.full_gem_path)
        YARD::CLI::Yardoc.run(*args)
      rescue Errno::EACCES => e
        dirname = File.dirname e.message.split("-")[1].strip
        raise Gem::FilePermissionError.new(dirname)
      rescue => ex
        alert_error "While generating documentation for #{@spec.full_name}"
        ui.errs.puts "... MESSAGE:   #{ex}"
        ui.errs.puts "... YARDOC args: #{args.join(' ')}"
        ui.errs.puts "\t#{ex.backtrace.join("\n\t")}" if Gem.configuration.backtrace
        ui.errs.puts "(continuing with the rest of the installation)"
      ensure
        Dir.chdir(old_pwd)
      end