class Solargraph::LanguageServer::Message::TextDocument::Rename

Public Instance Methods

process() click to toggle source
# File lib/solargraph/language_server/message/text_document/rename.rb, line 5
def process
  locs = host.references_from(params['textDocument']['uri'], params['position']['line'], params['position']['character'], strip: true)
  changes = {}
  locs.each do |loc|
    uri = file_to_uri(loc.filename)
    changes[uri] ||= []
    changes[uri].push({
      range: loc.range.to_hash,
      newText: params['newName']
    })
  end
  set_result changes: changes
end