solargraph 0.9.1 → 0.9.2
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 +2 -2
- data/lib/solargraph/code_map.rb +7 -0
- data/lib/solargraph/server.rb +2 -2
- data/lib/solargraph/version.rb +1 -1
- data/lib/solargraph/views/_method.erb +60 -0
- data/lib/solargraph/views/_namespace.erb +26 -0
- data/lib/solargraph/views/document.erb +16 -0
- metadata +8 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dd9313a286cf130526a889c6e21b07e5de2498f8
|
4
|
+
data.tar.gz: 759db6af9c03b875c451cbde438c924aa2f9f855
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9b5a23b6f4a27598cee4ef774958432f27b3d645d8126a970e941e7082c14ffcf6471a100b258055a789e4dbd89b1817a66e34ce5ebcf7f8a67ffb7ded0cf782
|
7
|
+
data.tar.gz: 7b644e646b415f3366e7461edbb381bd12bf5cf132ed79658aeddfdf9282cb209163474c2fceceb43687f9591fe846bd4ffec45c67f0afb3941120df90be438c
|
data/lib/solargraph/api_map.rb
CHANGED
@@ -614,7 +614,7 @@ module Solargraph
|
|
614
614
|
end
|
615
615
|
|
616
616
|
def mappable?(node)
|
617
|
-
return true if node.kind_of?(AST::Node) and [:array, :hash, :str, :int, :float].include?(node.type)
|
617
|
+
return true if node.kind_of?(AST::Node) and [:array, :hash, :str, :int, :float, :block].include?(node.type)
|
618
618
|
# TODO Add node.type :casgn (constant assignment)
|
619
619
|
if node.kind_of?(AST::Node) and (node.type == :class or node.type == :module or node.type == :def or node.type == :defs or node.type == :ivasgn or node.type == :gvasgn or node.type == :lvasgn or node.type == :or_asgn or node.type == :const or node.type == :lvar or node.type == :args or node.type == :kwargs)
|
620
620
|
true
|
@@ -650,7 +650,7 @@ module Solargraph
|
|
650
650
|
return node if node.type == :args
|
651
651
|
type = node.type
|
652
652
|
children = []
|
653
|
-
if node.type == :class
|
653
|
+
if node.type == :class or node.type == :block
|
654
654
|
children += node.children[0, 2]
|
655
655
|
children += get_mappable_nodes(node.children[2..-1], comment_hash)
|
656
656
|
#children += get_mappable_nodes(node.children, comment_hash)
|
data/lib/solargraph/code_map.rb
CHANGED
@@ -482,6 +482,13 @@ module Solargraph
|
|
482
482
|
if local.type == :def or local.type == :defs
|
483
483
|
result += get_method_arguments_from local
|
484
484
|
end
|
485
|
+
# Get block parameter variables
|
486
|
+
block_node = parent_node_from(index, :block)
|
487
|
+
unless block_node.nil? or block_node.children[1].nil?
|
488
|
+
block_node.children[1].children.each do |a|
|
489
|
+
result.push Suggestion.new(a.children[0], kind: Suggestion::PROPERTY)
|
490
|
+
end
|
491
|
+
end
|
485
492
|
result += api_map.get_methods('Kernel')
|
486
493
|
result
|
487
494
|
end
|
data/lib/solargraph/server.rb
CHANGED
@@ -43,7 +43,7 @@ module Solargraph
|
|
43
43
|
content_type :json
|
44
44
|
begin
|
45
45
|
sugg = []
|
46
|
-
workspace = params['workspace'] ||
|
46
|
+
workspace = params['workspace'] || nil
|
47
47
|
Server.prepare_workspace workspace unless @@api_hash.has_key?(workspace)
|
48
48
|
@@semaphore.synchronize {
|
49
49
|
code_map = CodeMap.new(code: params['text'], filename: params['filename'], api_map: @@api_hash[workspace])
|
@@ -62,7 +62,7 @@ module Solargraph
|
|
62
62
|
content_type :json
|
63
63
|
begin
|
64
64
|
sugg = []
|
65
|
-
workspace = params['workspace'] ||
|
65
|
+
workspace = params['workspace'] || nil
|
66
66
|
Server.prepare_workspace workspace unless @@api_hash.has_key?(workspace)
|
67
67
|
@@semaphore.synchronize {
|
68
68
|
code_map = CodeMap.new(code: params['text'], filename: params['filename'], api_map: @@api_hash[workspace])
|
data/lib/solargraph/version.rb
CHANGED
@@ -0,0 +1,60 @@
|
|
1
|
+
<h2>
|
2
|
+
Namespace:
|
3
|
+
</h2>
|
4
|
+
<p>
|
5
|
+
<a href="command:solargraph._openDocument?<%= URI.escape "\"solargraph:/document?#{object.namespace}\"" %>"><%= object.namespace %></a>
|
6
|
+
</p>
|
7
|
+
<h2>
|
8
|
+
Overview:
|
9
|
+
</h2>
|
10
|
+
<%= htmlify object.docstring %>
|
11
|
+
<h2>
|
12
|
+
Parameters:
|
13
|
+
</h2>
|
14
|
+
<% if object.parameters.empty? %>
|
15
|
+
<p>
|
16
|
+
None
|
17
|
+
</p>
|
18
|
+
<% else %>
|
19
|
+
<ul>
|
20
|
+
<% object.parameters.each do |p| %>
|
21
|
+
<li>
|
22
|
+
<%= p[0] %>
|
23
|
+
<%= " = #{p[1]}" unless p[1].nil? %>
|
24
|
+
</li>
|
25
|
+
<% end %>
|
26
|
+
</ul>
|
27
|
+
<% end %>
|
28
|
+
<h2>
|
29
|
+
Returns:
|
30
|
+
</h2>
|
31
|
+
<% if object.tag(:return).nil? %>
|
32
|
+
<p>
|
33
|
+
Undefined/unknown
|
34
|
+
</p>
|
35
|
+
<% else %>
|
36
|
+
<% tag = object.tag(:return) %>
|
37
|
+
<% unless tag.types.nil? or tag.types.empty? %>
|
38
|
+
<ul>
|
39
|
+
<% tag.types.each do |r| %>
|
40
|
+
<li>
|
41
|
+
<a href="command:solargraph._openDocument?<%= URI.escape "\"solargraph:/document?#{r}\"" %>"><%= r %></a>
|
42
|
+
</li>
|
43
|
+
<% end %>
|
44
|
+
</ul>
|
45
|
+
<% end %>
|
46
|
+
<% unless tag.text.empty? %>
|
47
|
+
<p>
|
48
|
+
<%= tag.text %>
|
49
|
+
</p>
|
50
|
+
<% end %>
|
51
|
+
<% end %>
|
52
|
+
<% examples = object.tags(:example) %>
|
53
|
+
<% unless examples.nil? %>
|
54
|
+
<% examples.each do |example| %>
|
55
|
+
<h2>
|
56
|
+
Example: <%= example.name %>
|
57
|
+
</h2>
|
58
|
+
<%= ruby_to_html example.text.strip %>
|
59
|
+
<% end %>
|
60
|
+
<% end %>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<h2>
|
2
|
+
Overview:
|
3
|
+
</h2>
|
4
|
+
<%= htmlify object.docstring %>
|
5
|
+
<h2>
|
6
|
+
Class Methods
|
7
|
+
</h2>
|
8
|
+
<ul class="doc-list">
|
9
|
+
<% object.meths(scope: :class).sort{|a, b| a.name <=> b.name}.each do |meth| %>
|
10
|
+
<li>
|
11
|
+
<% esc = URI.escape("\"solargraph:/document?#{meth.path}\"").gsub('%23', URI.escape('%23')) %>
|
12
|
+
<a href="command:solargraph._openDocument?<%= esc %>"><%= meth.name %></a>
|
13
|
+
</li>
|
14
|
+
<% end %>
|
15
|
+
</ul>
|
16
|
+
<h2>
|
17
|
+
Instance Methods
|
18
|
+
</h2>
|
19
|
+
<ul class="doc-list">
|
20
|
+
<% object.meths(scope: :instance).sort{|a, b| a.name <=> b.name}.each do |meth| %>
|
21
|
+
<li>
|
22
|
+
<% esc = URI.escape("\"solargraph:/document?#{meth.path}\"").gsub('%23', URI.escape('%23')) %>
|
23
|
+
<a href="command:solargraph._openDocument?<%= esc %>"><%= meth.name %></a>
|
24
|
+
</li>
|
25
|
+
<% end %>
|
26
|
+
</ul>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<% @objects.reverse.each do |object| %>
|
2
|
+
<h1>
|
3
|
+
<%= object.name %>
|
4
|
+
</h1>
|
5
|
+
<h2>
|
6
|
+
Defined in:
|
7
|
+
</h2>
|
8
|
+
<p>
|
9
|
+
<%= object.files.join(', ') %>
|
10
|
+
</p>
|
11
|
+
<% if object.kind_of?(YARD::CodeObjects::NamespaceObject) %>
|
12
|
+
<%= erb :_namespace, layout: false, locals: {object: object} %>
|
13
|
+
<% elsif object.kind_of?(YARD::CodeObjects::MethodObject) %>
|
14
|
+
<%= erb :_method, layout: false, locals: {object: object} %>
|
15
|
+
<% end %>
|
16
|
+
<% 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.9.
|
4
|
+
version: 0.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fred Snyder
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-08-
|
11
|
+
date: 2017-08-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: parser
|
@@ -107,25 +107,19 @@ dependencies:
|
|
107
107
|
- !ruby/object:Gem::Version
|
108
108
|
version: '0'
|
109
109
|
- !ruby/object:Gem::Dependency
|
110
|
-
name:
|
110
|
+
name: simplecov
|
111
111
|
requirement: !ruby/object:Gem::Requirement
|
112
112
|
requirements:
|
113
113
|
- - "~>"
|
114
114
|
- !ruby/object:Gem::Version
|
115
|
-
version: '
|
116
|
-
- - ">="
|
117
|
-
- !ruby/object:Gem::Version
|
118
|
-
version: 1.0.0
|
115
|
+
version: '0.14'
|
119
116
|
type: :development
|
120
117
|
prerelease: false
|
121
118
|
version_requirements: !ruby/object:Gem::Requirement
|
122
119
|
requirements:
|
123
120
|
- - "~>"
|
124
121
|
- !ruby/object:Gem::Version
|
125
|
-
version: '
|
126
|
-
- - ">="
|
127
|
-
- !ruby/object:Gem::Version
|
128
|
-
version: 1.0.0
|
122
|
+
version: '0.14'
|
129
123
|
description: IDE tools for code analysis and autocompletion
|
130
124
|
email: admin@castwide.com
|
131
125
|
executables:
|
@@ -145,6 +139,9 @@ files:
|
|
145
139
|
- lib/solargraph/snippets.rb
|
146
140
|
- lib/solargraph/suggestion.rb
|
147
141
|
- lib/solargraph/version.rb
|
142
|
+
- lib/solargraph/views/_method.erb
|
143
|
+
- lib/solargraph/views/_namespace.erb
|
144
|
+
- lib/solargraph/views/document.erb
|
148
145
|
- lib/solargraph/views/layout.erb
|
149
146
|
- lib/solargraph/views/search.erb
|
150
147
|
- lib/solargraph/yard_map.rb
|