Sha256: 947678862d55ac9ff9e503bfdd04081b3fa08f8fd9ca980d7148ecfc864c5af7
Contents?: true
Size: 924 Bytes
Versions: 7
Compression:
Stored size: 924 Bytes
Contents
# typed: strict # frozen_string_literal: true require "ruby_lsp/requests/support/rubocop_runner" return unless defined?(::RubyLsp::Requests::Support::RuboCopRunner) require "cgi" require "singleton" module RubyLsp module Requests module Support # :nodoc: class RuboCopDiagnosticsRunner extend T::Sig include Singleton sig { void } def initialize @runner = T.let(RuboCopRunner.new, RuboCopRunner) end sig { params(uri: String, document: Document).returns(T::Array[Support::RuboCopDiagnostic]) } def run(uri, document) filename = CGI.unescape(URI.parse(uri).path) # Invoke RuboCop with just this file in `paths` @runner.run(filename, document.source) @runner.offenses.map do |offense| Support::RuboCopDiagnostic.new(offense, uri) end end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems