solargraph 0.31.3 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/solargraph/api_map.rb +16 -14
- data/lib/solargraph/core_fills.rb +5 -1
- data/lib/solargraph/language_server/host.rb +1 -1
- data/lib/solargraph/language_server/message.rb +1 -0
- data/lib/solargraph/language_server/message/completion_item/resolve.rb +10 -1
- data/lib/solargraph/language_server/message/initialize.rb +1 -1
- data/lib/solargraph/language_server/message/initialized.rb +1 -0
- data/lib/solargraph/language_server/message/text_document.rb +1 -0
- data/lib/solargraph/language_server/message/text_document/prepare_rename.rb +9 -0
- data/lib/solargraph/language_server/transport/adapter.rb +4 -1
- data/lib/solargraph/pin/base.rb +5 -3
- data/lib/solargraph/pin/base_method.rb +31 -14
- data/lib/solargraph/pin/block_parameter.rb +4 -0
- data/lib/solargraph/source.rb +13 -4
- data/lib/solargraph/source/chain/call.rb +1 -1
- data/lib/solargraph/source/source_chainer.rb +1 -0
- data/lib/solargraph/source_map/mapper.rb +7 -3
- data/lib/solargraph/source_map/node_processor/send_node.rb +2 -2
- data/lib/solargraph/version.rb +1 -1
- data/lib/solargraph/yard_map.rb +18 -12
- metadata +19 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5509f89d971f0a22e8256a0492ce0acd036c2bc1fa01f55b3ca9fb08ff358030
|
4
|
+
data.tar.gz: 53f76eccd7206efdb918507752201c4a61aeabd2c67d69ad64686e6bae4bec41
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 140976ad7f59ab810812bcc7ebc6ea141c07337effd78e025c3fda5112e4b130996b7697835b64fc16aca8e4457b0255a55cd3c1c8906479af08af6c78e29ec2
|
7
|
+
data.tar.gz: 1af8ccbb0d7e16bb8a49e2f8c5214deb0bbcd33164e704434bd33b6be8b909397385e615b1d2bad34a179303aa2c258f642bf28d2790018b60d00de519955817
|
data/lib/solargraph/api_map.rb
CHANGED
@@ -580,22 +580,24 @@ module Solargraph
|
|
580
580
|
return inner_qualify(root, '', skip)
|
581
581
|
end
|
582
582
|
else
|
583
|
-
if root == ''
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
foundinc = inner_qualify(name, inc, skip)
|
593
|
-
return foundinc unless foundinc.nil?
|
594
|
-
end
|
595
|
-
roots.pop
|
583
|
+
return name if root == '' && store.namespace_exists?(name)
|
584
|
+
roots = root.to_s.split('::')
|
585
|
+
while roots.length > 0
|
586
|
+
fqns = roots.join('::') + '::' + name
|
587
|
+
return fqns if store.namespace_exists?(fqns)
|
588
|
+
incs = store.get_includes(roots.join('::'))
|
589
|
+
incs.each do |inc|
|
590
|
+
foundinc = inner_qualify(name, inc, skip)
|
591
|
+
return foundinc unless foundinc.nil?
|
596
592
|
end
|
597
|
-
|
593
|
+
roots.pop
|
594
|
+
end
|
595
|
+
incs = store.get_includes('')
|
596
|
+
incs.each do |inc|
|
597
|
+
foundinc = inner_qualify(name, inc, skip)
|
598
|
+
return foundinc unless foundinc.nil?
|
598
599
|
end
|
600
|
+
return name if store.namespace_exists?(name)
|
599
601
|
end
|
600
602
|
# live_map.get_fqns(name, root)
|
601
603
|
end
|
@@ -11,7 +11,7 @@ module Solargraph
|
|
11
11
|
METHODS_RETURNING_SELF = %w[
|
12
12
|
Array#select Array#reject Array#keep_if Array#delete_if
|
13
13
|
Enumerable#select
|
14
|
-
Object#clone Object#dup Object#freeze Object#taint Object#untaint
|
14
|
+
Object#clone Object#dup Object#freeze Object#taint Object#untaint Object#tap
|
15
15
|
String#freeze
|
16
16
|
].freeze
|
17
17
|
|
@@ -19,6 +19,10 @@ module Solargraph
|
|
19
19
|
Array#[] Array#first Array#last
|
20
20
|
].freeze
|
21
21
|
|
22
|
+
METHODS_WITH_YIELDPARAM_SELF = %w[
|
23
|
+
Object#tap
|
24
|
+
].freeze
|
25
|
+
|
22
26
|
METHODS_WITH_YIELDPARAM_SUBTYPES = %w[
|
23
27
|
Array#each Array#map Array#any? Array#all? Array#index
|
24
28
|
Enumerable#each_entry Enumerable#map Enumerable#any? Enumerable#all?
|
@@ -70,6 +70,7 @@ module Solargraph
|
|
70
70
|
register 'textDocument/documentSymbol', TextDocument::DocumentSymbol
|
71
71
|
register 'textDocument/references', TextDocument::References
|
72
72
|
register 'textDocument/rename', TextDocument::Rename
|
73
|
+
register 'textDocument/prepareRename', TextDocument::PrepareRename
|
73
74
|
register 'textDocument/foldingRange', TextDocument::FoldingRange
|
74
75
|
register 'workspace/didChangeWatchedFiles', Workspace::DidChangeWatchedFiles
|
75
76
|
register 'workspace/didChangeConfiguration', Workspace::DidChangeConfiguration
|
@@ -21,7 +21,16 @@ module Solargraph
|
|
21
21
|
.map { |pin| pin.resolve_completion_item[:documentation] }
|
22
22
|
params
|
23
23
|
.merge(pins.first.resolve_completion_item)
|
24
|
-
.merge(documentation: docs.join("\n\n"))
|
24
|
+
.merge(documentation: markup_content(docs.join("\n\n")))
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param text [String]
|
28
|
+
# @return [Hash{Symbol => String}]
|
29
|
+
def markup_content text
|
30
|
+
{
|
31
|
+
kind: 'markdown',
|
32
|
+
value: text
|
33
|
+
}
|
25
34
|
end
|
26
35
|
end
|
27
36
|
end
|
@@ -17,6 +17,7 @@ module Solargraph
|
|
17
17
|
autoload :Formatting, 'solargraph/language_server/message/text_document/formatting'
|
18
18
|
autoload :References, 'solargraph/language_server/message/text_document/references'
|
19
19
|
autoload :Rename, 'solargraph/language_server/message/text_document/rename'
|
20
|
+
autoload :PrepareRename, 'solargraph/language_server/message/text_document/prepare_rename'
|
20
21
|
autoload :FoldingRange, 'solargraph/language_server/message/text_document/folding_range'
|
21
22
|
end
|
22
23
|
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
module Solargraph::LanguageServer::Message::TextDocument
|
2
|
+
class PrepareRename < Base
|
3
|
+
def process
|
4
|
+
line = params['position']['line']
|
5
|
+
col = params['position']['character']
|
6
|
+
set_result host.sources.find(params['textDocument']['uri']).cursor_at(Solargraph::Position.new(line, col)).range.to_hash
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
@@ -21,9 +21,12 @@ module Solargraph
|
|
21
21
|
end
|
22
22
|
|
23
23
|
# @param data [String]
|
24
|
-
def
|
24
|
+
def receiving data
|
25
25
|
@data_reader.receive data
|
26
26
|
end
|
27
|
+
# @todo Temporary alias to avoid problems due to a breaking change in
|
28
|
+
# the Backport API
|
29
|
+
alias sending receiving
|
27
30
|
|
28
31
|
private
|
29
32
|
|
data/lib/solargraph/pin/base.rb
CHANGED
@@ -111,7 +111,7 @@ module Solargraph
|
|
111
111
|
# @return [YARD::Docstring]
|
112
112
|
def docstring
|
113
113
|
parse_comments unless defined?(@docstring)
|
114
|
-
@docstring ||=
|
114
|
+
@docstring ||= Solargraph::Source.parse_docstring('').to_docstring
|
115
115
|
end
|
116
116
|
|
117
117
|
# @return [Array<YARD::Tags::Directive>]
|
@@ -225,7 +225,9 @@ module Solargraph
|
|
225
225
|
@docstring = nil
|
226
226
|
@directives = []
|
227
227
|
else
|
228
|
-
|
228
|
+
# HACK: Pass a dummy code object to the parser for plugins that
|
229
|
+
# expect it not to be nil
|
230
|
+
parse = Solargraph::Source.parse_docstring(comments)
|
229
231
|
@docstring = parse.to_docstring
|
230
232
|
@directives = parse.directives
|
231
233
|
end
|
@@ -270,7 +272,7 @@ module Solargraph
|
|
270
272
|
# @return [Array<YARD::Tags::Handlers::Directive>]
|
271
273
|
def collect_macros
|
272
274
|
return [] unless maybe_directives?
|
273
|
-
parse =
|
275
|
+
parse = Solargraph::Source.parse_docstring(comments)
|
274
276
|
parse.directives.select{ |d| d.tag.tag_name == 'macro' }
|
275
277
|
end
|
276
278
|
end
|
@@ -34,23 +34,40 @@ module Solargraph
|
|
34
34
|
ComplexType.try_parse *tag.types
|
35
35
|
end
|
36
36
|
|
37
|
-
# @param [ApiMap]
|
37
|
+
# @param api_map [ApiMap]
|
38
|
+
# @return [ComplexType]
|
38
39
|
def see_reference api_map
|
39
40
|
docstring.ref_tags.each do |ref|
|
40
41
|
next unless ref.tag_name == 'return' && ref.owner
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
42
|
+
result = resolve_reference(ref.owner.to_s, api_map)
|
43
|
+
return result unless result.nil?
|
44
|
+
end
|
45
|
+
match = comments.match(/\(see (.*)\)/)
|
46
|
+
return nil if match.nil?
|
47
|
+
resolve_reference match[1], api_map
|
48
|
+
end
|
49
|
+
|
50
|
+
# @param ref [String]
|
51
|
+
# @param api_map [ApiMap]
|
52
|
+
# @return [ComplexType]
|
53
|
+
def resolve_reference ref, api_map
|
54
|
+
parts = ref.split(/[\.#]/)
|
55
|
+
if parts.first.empty?
|
56
|
+
path = "#{namespace}#{ref}"
|
57
|
+
else
|
58
|
+
fqns = api_map.qualify(parts.first, namespace)
|
59
|
+
return ComplexType::UNDEFINED if fqns.nil?
|
60
|
+
path = fqns + ref[parts.first.length] + parts.last
|
61
|
+
end
|
62
|
+
pins = api_map.get_path_pins(path)
|
63
|
+
pins.each do |pin|
|
64
|
+
type = pin.typify(api_map)
|
65
|
+
return type unless type.undefined?
|
66
|
+
end
|
67
|
+
pins = api_map.get_path_pins(path)
|
68
|
+
pins.each do |pin|
|
69
|
+
type = pin.typify(api_map)
|
70
|
+
return type unless type.undefined?
|
54
71
|
end
|
55
72
|
nil
|
56
73
|
end
|
@@ -85,6 +85,10 @@ module Solargraph
|
|
85
85
|
bmeth = chain.base.define(api_map, context, locals).first
|
86
86
|
return ComplexType::UNDEFINED if bmeth.nil? or bmeth.return_complex_type.undefined? or bmeth.return_complex_type.subtypes.empty?
|
87
87
|
return bmeth.return_complex_type.subtypes.first.qualify(api_map, bmeth.context.namespace)
|
88
|
+
elsif (Solargraph::CoreFills::METHODS_WITH_YIELDPARAM_SELF.include?(meth.path))
|
89
|
+
bmeth = chain.base.define(api_map, context, locals).first
|
90
|
+
return ComplexType::UNDEFINED if bmeth.nil?
|
91
|
+
return bmeth.typify(api_map)
|
88
92
|
else
|
89
93
|
yps = meth.docstring.tags(:yieldparam)
|
90
94
|
unless yps[index].nil? or yps[index].types.nil? or yps[index].types.empty?
|
data/lib/solargraph/source.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'parser/current'
|
2
|
+
require 'yard'
|
2
3
|
|
3
4
|
module Solargraph
|
4
5
|
# A Ruby file that has been parsed into an AST.
|
@@ -327,7 +328,7 @@ module Solargraph
|
|
327
328
|
last_line = nil
|
328
329
|
comments.each { |l|
|
329
330
|
# Trim the comment and minimum leading whitespace
|
330
|
-
p = l.text.gsub(
|
331
|
+
p = l.text.gsub(/^#+/, '')
|
331
332
|
if num.nil? and !p.strip.empty?
|
332
333
|
num = p.index(/[^ ]/)
|
333
334
|
started = true
|
@@ -465,7 +466,7 @@ module Solargraph
|
|
465
466
|
# @param filename [String]
|
466
467
|
# @return [Solargraph::Source]
|
467
468
|
def load filename
|
468
|
-
file = File.open(filename
|
469
|
+
file = File.open(filename)
|
469
470
|
code = file.read
|
470
471
|
file.close
|
471
472
|
Source.load_string(code, filename)
|
@@ -484,7 +485,7 @@ module Solargraph
|
|
484
485
|
# @return [Array(Parser::AST::Node, Array<Parser::Source::Comment>)]
|
485
486
|
def parse_with_comments code, filename = nil
|
486
487
|
buffer = Parser::Source::Buffer.new(filename, 0)
|
487
|
-
buffer.source = code
|
488
|
+
buffer.source = code
|
488
489
|
parser.parse_with_comments(buffer)
|
489
490
|
end
|
490
491
|
|
@@ -494,7 +495,7 @@ module Solargraph
|
|
494
495
|
# @return [Parser::AST::Node]
|
495
496
|
def parse code, filename = nil, line = 0
|
496
497
|
buffer = Parser::Source::Buffer.new(filename, line)
|
497
|
-
buffer.source = code
|
498
|
+
buffer.source = code
|
498
499
|
parser.parse(buffer)
|
499
500
|
end
|
500
501
|
|
@@ -507,6 +508,14 @@ module Solargraph
|
|
507
508
|
parser.diagnostics.ignore_warnings = true
|
508
509
|
parser
|
509
510
|
end
|
511
|
+
|
512
|
+
# @param comments [String]
|
513
|
+
# @return [YARD::DocstringParser]
|
514
|
+
def parse_docstring comments
|
515
|
+
# HACK: Pass a dummy code object to the parser for plugins that
|
516
|
+
# expect it not to be nil
|
517
|
+
YARD::Docstring.parser.parse(comments, YARD::CodeObjects::Base.new(:root, 'stub'))
|
518
|
+
end
|
510
519
|
end
|
511
520
|
end
|
512
521
|
end
|
@@ -94,7 +94,7 @@ module Solargraph
|
|
94
94
|
txt.gsub!(/\$#{i}/, v.context.namespace)
|
95
95
|
i += 1
|
96
96
|
end
|
97
|
-
docstring =
|
97
|
+
docstring = Solargraph::Source.parse_docstring(txt).to_docstring
|
98
98
|
tag = docstring.tag(:return)
|
99
99
|
unless tag.nil? || tag.types.nil?
|
100
100
|
return Pin::ProxyType.anonymous(ComplexType.try_parse(*tag.types))
|
@@ -157,6 +157,7 @@ module Solargraph
|
|
157
157
|
end
|
158
158
|
if brackets.zero? and parens.zero? and squares.zero?
|
159
159
|
break if ['"', "'", ',', ';', '%'].include?(char)
|
160
|
+
break if !signature.empty? && ['!', '?'].include?(char)
|
160
161
|
signature = char + signature if char.match(/[a-z0-9:\._@\$\?\!]/i) and @source.code[index - 1] != '%'
|
161
162
|
break if char == '$'
|
162
163
|
if char == '@'
|
@@ -21,10 +21,14 @@ module Solargraph
|
|
21
21
|
@filename = source.filename
|
22
22
|
@code = source.code
|
23
23
|
@comments = source.comments
|
24
|
-
@pins =
|
24
|
+
@pins = NodeProcessor.process(source.node, Region.new(source: source))
|
25
25
|
process_comment_directives
|
26
26
|
locals = @pins.select{|p| [Pin::LocalVariable, Pin::MethodParameter, Pin::BlockParameter].include?(p.class)}
|
27
27
|
[@pins - locals, locals]
|
28
|
+
rescue Exception => e
|
29
|
+
Solargraph.logger.warn "Error mapping #{source.filename}: [#{e.class}] #{e.message}"
|
30
|
+
Solargraph.logger.warn e.backtrace
|
31
|
+
[[], []]
|
28
32
|
end
|
29
33
|
|
30
34
|
def unmap filename, code
|
@@ -62,14 +66,14 @@ module Solargraph
|
|
62
66
|
def process_comment source_position, comment_position, comment
|
63
67
|
return unless comment =~ MACRO_REGEXP
|
64
68
|
cmnt = remove_inline_comment_hashes(comment)
|
65
|
-
parse =
|
69
|
+
parse = Solargraph::Source.parse_docstring(cmnt)
|
66
70
|
parse.directives.each { |d| process_directive(source_position, comment_position, d) }
|
67
71
|
end
|
68
72
|
|
69
73
|
# @param position [Position]
|
70
74
|
# @param directive [YARD::Tags::Directive]
|
71
75
|
def process_directive source_position, comment_position, directive
|
72
|
-
docstring =
|
76
|
+
docstring = Solargraph::Source.parse_docstring(directive.tag.text).to_docstring
|
73
77
|
location = Location.new(@filename, Range.new(comment_position, comment_position))
|
74
78
|
case directive.tag.tag_name
|
75
79
|
when 'method'
|
@@ -147,8 +147,8 @@ module Solargraph
|
|
147
147
|
if node.children[2].type == :sym || node.children[2].type == :str
|
148
148
|
ref = pins.select{|p| [Solargraph::Pin::Method, Solargraph::Pin::Attribute].include?(p.class) && p.namespace == region.namespace && p.name == node.children[2].children[0].to_s}.first
|
149
149
|
unless ref.nil?
|
150
|
-
|
151
|
-
|
150
|
+
# HACK: Smelly instance variable access
|
151
|
+
ref.instance_variable_set(:@visibility, :private)
|
152
152
|
end
|
153
153
|
false
|
154
154
|
else
|
data/lib/solargraph/version.rb
CHANGED
data/lib/solargraph/yard_map.rb
CHANGED
@@ -123,9 +123,9 @@ module Solargraph
|
|
123
123
|
|
124
124
|
# @param code_object [YARD::CodeObjects::Base]
|
125
125
|
# @return [Solargraph::Pin::Base]
|
126
|
-
def generate_pins code_object
|
126
|
+
def generate_pins code_object, spec = nil
|
127
127
|
result = []
|
128
|
-
location = object_location(code_object)
|
128
|
+
location = object_location(code_object, spec)
|
129
129
|
if code_object.is_a?(YARD::CodeObjects::NamespaceObject)
|
130
130
|
result.push Solargraph::Pin::YardPin::Namespace.new(code_object, location)
|
131
131
|
if code_object.is_a?(YARD::CodeObjects::ClassObject) and !code_object.superclass.nil?
|
@@ -186,7 +186,7 @@ module Solargraph
|
|
186
186
|
@gem_paths[spec.name] = spec.full_gem_path
|
187
187
|
unless yardocs.include?(yd)
|
188
188
|
yardocs.unshift yd
|
189
|
-
result.concat process_yardoc yd
|
189
|
+
result.concat process_yardoc yd, spec
|
190
190
|
result.concat add_gem_dependencies(spec) if with_dependencies?
|
191
191
|
end
|
192
192
|
rescue Gem::LoadError => e
|
@@ -248,7 +248,7 @@ module Solargraph
|
|
248
248
|
else
|
249
249
|
next if yardocs.include?(gy)
|
250
250
|
yardocs.unshift gy
|
251
|
-
result.concat process_yardoc gy
|
251
|
+
result.concat process_yardoc gy, depspec
|
252
252
|
result.concat add_gem_dependencies(depspec)
|
253
253
|
end
|
254
254
|
rescue Gem::LoadError
|
@@ -261,7 +261,7 @@ module Solargraph
|
|
261
261
|
|
262
262
|
# @param y [String, nil]
|
263
263
|
# @return [Array<Pin::Base>]
|
264
|
-
def process_yardoc y
|
264
|
+
def process_yardoc y, spec = nil
|
265
265
|
return [] if y.nil?
|
266
266
|
size = Dir.glob(File.join(y, '**', '*'))
|
267
267
|
.map{ |f| File.size(f) }
|
@@ -273,20 +273,26 @@ module Solargraph
|
|
273
273
|
result = []
|
274
274
|
load_yardoc y
|
275
275
|
YARD::Registry.each do |o|
|
276
|
-
result.concat generate_pins(o)
|
276
|
+
result.concat generate_pins(o, spec)
|
277
277
|
end
|
278
278
|
result
|
279
279
|
end
|
280
280
|
|
281
281
|
# @param obj [YARD::CodeObjects::Base]
|
282
282
|
# @return [Solargraph::Location]
|
283
|
-
def object_location obj
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
283
|
+
def object_location obj, spec = nil
|
284
|
+
@object_file_cache ||= {}
|
285
|
+
return nil if spec.nil? || obj.file.nil? || obj.line.nil?
|
286
|
+
file = nil
|
287
|
+
if @object_file_cache.key?(obj.file)
|
288
|
+
file = @object_file_cache[obj.file]
|
289
|
+
else
|
290
|
+
tmp = File.join(spec.full_gem_path, obj.file)
|
291
|
+
file = tmp if File.exist?(tmp)
|
292
|
+
@object_file_cache[obj.file] = file
|
288
293
|
end
|
289
|
-
nil
|
294
|
+
return nil if file.nil?
|
295
|
+
Solargraph::Location.new(file, Solargraph::Range.from_to(obj.line - 1, 0, obj.line - 1, 0))
|
290
296
|
end
|
291
297
|
end
|
292
298
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solargraph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.32.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fred Snyder
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-04-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: backport
|
@@ -16,14 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0
|
19
|
+
version: '1.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0
|
26
|
+
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.17.2
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.17.2
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: htmlentities
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -286,6 +300,7 @@ files:
|
|
286
300
|
- lib/solargraph/language_server/message/text_document/formatting.rb
|
287
301
|
- lib/solargraph/language_server/message/text_document/hover.rb
|
288
302
|
- lib/solargraph/language_server/message/text_document/on_type_formatting.rb
|
303
|
+
- lib/solargraph/language_server/message/text_document/prepare_rename.rb
|
289
304
|
- lib/solargraph/language_server/message/text_document/references.rb
|
290
305
|
- lib/solargraph/language_server/message/text_document/rename.rb
|
291
306
|
- lib/solargraph/language_server/message/text_document/signature_help.rb
|