Method: RubyLsp::Requests::Support::RuboCopDiagnostic#to_lsp_code_action

Defined in:
lib/ruby_lsp/requests/support/rubocop_diagnostic.rb

#to_lsp_code_actionObject

[View source]

29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/ruby_lsp/requests/support/rubocop_diagnostic.rb', line 29

def to_lsp_code_action
  Interface::CodeAction.new(
    title: "Autocorrect #{@offense.cop_name}",
    kind: Constant::CodeActionKind::QUICK_FIX,
    edit: Interface::WorkspaceEdit.new(
      document_changes: [
        Interface::TextDocumentEdit.new(
          text_document: Interface::OptionalVersionedTextDocumentIdentifier.new(
            uri: @uri,
            version: nil,
          ),
          edits: @offense.correctable? ? offense_replacements : [],
        ),
      ],
    ),
    is_preferred: true,
  )
end