Sha256: 6e300f7dc5d1db5ffff9474ebaac220d3766a29ab1ac01586abf285d7346e9a2
Contents?: true
Size: 1.46 KB
Versions: 4
Compression:
Stored size: 1.46 KB
Contents
module LanguageServer module Protocol module Interface # # Rename file operation # class RenameFile def initialize(kind:, old_uri:, new_uri:, options: nil, annotation_id: nil) @attributes = {} @attributes[:kind] = kind @attributes[:oldUri] = old_uri @attributes[:newUri] = new_uri @attributes[:options] = options if options @attributes[:annotationId] = annotation_id if annotation_id @attributes.freeze end # # A rename # # @return ["rename"] def kind attributes.fetch(:kind) end # # The old (existing) location. # # @return [string] def old_uri attributes.fetch(:oldUri) end # # The new location. # # @return [string] def new_uri attributes.fetch(:newUri) end # # Rename options. # # @return [RenameFileOptions] def options attributes.fetch(:options) end # # An optional annotation identifer describing the operation. # # @return [string] def annotation_id attributes.fetch(:annotationId) end attr_reader :attributes def to_hash attributes end def to_json(*args) to_hash.to_json(*args) end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems