solargraph 0.32.1 → 0.32.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/.gitignore +9 -0
- data/.rspec +2 -0
- data/.rubocop.yml +6 -0
- data/.travis.yml +25 -0
- data/EXAMPLES.md +76 -0
- data/Gemfile +3 -0
- data/LANGUAGE_SERVER.md +51 -0
- data/LICENSE +21 -0
- data/OVERVIEW.md +37 -0
- data/README.md +106 -0
- data/Rakefile +14 -0
- data/SERVER.md +95 -0
- data/bin/solargraph +0 -0
- data/bin/solargraph-runtime +5 -5
- data/lib/solargraph.rb +54 -54
- data/lib/solargraph/api_map.rb +659 -659
- data/lib/solargraph/api_map/cache.rb +49 -49
- data/lib/solargraph/api_map/source_to_yard.rb +67 -67
- data/lib/solargraph/api_map/store.rb +201 -201
- data/lib/solargraph/bundle.rb +24 -24
- data/lib/solargraph/complex_type.rb +150 -150
- data/lib/solargraph/complex_type/type_methods.rb +124 -124
- data/lib/solargraph/complex_type/unique_type.rb +44 -44
- data/lib/solargraph/core_fills.rb +37 -37
- data/lib/solargraph/diagnostics.rb +52 -52
- data/lib/solargraph/diagnostics/base.rb +20 -20
- data/lib/solargraph/diagnostics/require_not_found.rb +28 -28
- data/lib/solargraph/diagnostics/rubocop.rb +98 -98
- data/lib/solargraph/diagnostics/rubocop_helpers.rb +46 -46
- data/lib/solargraph/diagnostics/type_not_defined.rb +108 -108
- data/lib/solargraph/diagnostics/update_errors.rb +38 -38
- data/lib/solargraph/language_server/completion_item_kinds.rb +33 -33
- data/lib/solargraph/language_server/error_codes.rb +18 -18
- data/lib/solargraph/language_server/host.rb +684 -681
- data/lib/solargraph/language_server/host/cataloger.rb +54 -79
- data/lib/solargraph/language_server/host/diagnoser.rb +80 -80
- data/lib/solargraph/language_server/host/dispatch.rb +112 -113
- data/lib/solargraph/language_server/host/sources.rb +138 -138
- data/lib/solargraph/language_server/message.rb +90 -90
- data/lib/solargraph/language_server/message/base.rb +83 -83
- data/lib/solargraph/language_server/message/completion_item/resolve.rb +40 -40
- data/lib/solargraph/language_server/message/exit_notification.rb +11 -11
- data/lib/solargraph/language_server/message/extended.rb +19 -19
- data/lib/solargraph/language_server/message/extended/check_gem_version.rb +86 -86
- data/lib/solargraph/language_server/message/extended/document.rb +18 -18
- data/lib/solargraph/language_server/message/extended/document_gems.rb +30 -30
- data/lib/solargraph/language_server/message/extended/environment.rb +20 -20
- data/lib/solargraph/language_server/message/extended/search.rb +18 -18
- data/lib/solargraph/language_server/message/initialize.rb +141 -141
- data/lib/solargraph/language_server/message/initialized.rb +23 -23
- data/lib/solargraph/language_server/message/shutdown.rb +11 -11
- data/lib/solargraph/language_server/message/text_document.rb +25 -25
- data/lib/solargraph/language_server/message/text_document/completion.rb +51 -51
- data/lib/solargraph/language_server/message/text_document/definition.rb +18 -18
- data/lib/solargraph/language_server/message/text_document/did_change.rb +13 -13
- data/lib/solargraph/language_server/message/text_document/document_symbol.rb +21 -21
- data/lib/solargraph/language_server/message/text_document/folding_range.rb +24 -24
- data/lib/solargraph/language_server/message/text_document/formatting.rb +50 -50
- data/lib/solargraph/language_server/message/text_document/hover.rb +31 -31
- data/lib/solargraph/language_server/message/text_document/on_type_formatting.rb +32 -32
- data/lib/solargraph/language_server/message/text_document/prepare_rename.rb +9 -9
- data/lib/solargraph/language_server/message/text_document/references.rb +14 -14
- data/lib/solargraph/language_server/message/text_document/rename.rb +17 -17
- data/lib/solargraph/language_server/message/text_document/signature_help.rb +19 -19
- data/lib/solargraph/language_server/message/workspace.rb +12 -12
- data/lib/solargraph/language_server/message/workspace/did_change_configuration.rb +29 -29
- data/lib/solargraph/language_server/message/workspace/did_change_watched_files.rb +29 -27
- data/lib/solargraph/language_server/message/workspace/did_change_workspace_folders.rb +24 -24
- data/lib/solargraph/language_server/message/workspace/workspace_symbol.rb +21 -21
- data/lib/solargraph/language_server/request.rb +22 -22
- data/lib/solargraph/language_server/symbol_kinds.rb +34 -34
- data/lib/solargraph/language_server/transport.rb +11 -11
- data/lib/solargraph/language_server/transport/adapter.rb +60 -60
- data/lib/solargraph/language_server/transport/data_reader.rb +66 -66
- data/lib/solargraph/language_server/uri_helpers.rb +25 -25
- data/lib/solargraph/library.rb +421 -419
- data/lib/solargraph/live_map.rb +126 -126
- data/lib/solargraph/live_map/cache.rb +38 -38
- data/lib/solargraph/location.rb +31 -31
- data/lib/solargraph/logging.rb +25 -25
- data/lib/solargraph/page.rb +68 -68
- data/lib/solargraph/pin.rb +50 -50
- data/lib/solargraph/pin/attribute.rb +41 -41
- data/lib/solargraph/pin/base.rb +280 -280
- data/lib/solargraph/pin/base_method.rb +76 -76
- data/lib/solargraph/pin/base_variable.rb +72 -72
- data/lib/solargraph/pin/block.rb +32 -32
- data/lib/solargraph/pin/block_parameter.rb +103 -103
- data/lib/solargraph/pin/class_variable.rb +9 -9
- data/lib/solargraph/pin/constant.rb +30 -30
- data/lib/solargraph/pin/conversions.rb +79 -79
- data/lib/solargraph/pin/documenting.rb +41 -41
- data/lib/solargraph/pin/duck_method.rb +14 -14
- data/lib/solargraph/pin/global_variable.rb +9 -9
- data/lib/solargraph/pin/instance_variable.rb +9 -9
- data/lib/solargraph/pin/keyword.rb +17 -17
- data/lib/solargraph/pin/local_variable.rb +23 -23
- data/lib/solargraph/pin/localized.rb +22 -22
- data/lib/solargraph/pin/method.rb +126 -126
- data/lib/solargraph/pin/method_alias.rb +30 -30
- data/lib/solargraph/pin/method_parameter.rb +40 -40
- data/lib/solargraph/pin/namespace.rb +54 -54
- data/lib/solargraph/pin/plugin/method.rb +25 -25
- data/lib/solargraph/pin/proxy_type.rb +35 -35
- data/lib/solargraph/pin/reference.rb +22 -22
- data/lib/solargraph/pin/reference/extend.rb +11 -11
- data/lib/solargraph/pin/reference/include.rb +11 -11
- data/lib/solargraph/pin/reference/require.rb +15 -15
- data/lib/solargraph/pin/reference/superclass.rb +11 -11
- data/lib/solargraph/pin/symbol.rb +44 -44
- data/lib/solargraph/pin/yard_pin.rb +10 -10
- data/lib/solargraph/pin/yard_pin/constant.rb +14 -14
- data/lib/solargraph/pin/yard_pin/method.rb +35 -35
- data/lib/solargraph/pin/yard_pin/namespace.rb +19 -19
- data/lib/solargraph/pin/yard_pin/yard_mixin.rb +14 -14
- data/lib/solargraph/plugin.rb +8 -8
- data/lib/solargraph/plugin/base.rb +41 -41
- data/lib/solargraph/plugin/canceler.rb +11 -11
- data/lib/solargraph/plugin/process.rb +172 -172
- data/lib/solargraph/plugin/runtime.rb +134 -134
- data/lib/solargraph/position.rb +110 -110
- data/lib/solargraph/range.rb +83 -83
- data/lib/solargraph/server_methods.rb +14 -14
- data/lib/solargraph/shell.rb +102 -102
- data/lib/solargraph/source.rb +521 -521
- data/lib/solargraph/source/chain.rb +120 -120
- data/lib/solargraph/source/chain/call.rb +107 -107
- data/lib/solargraph/source/chain/class_variable.rb +11 -11
- data/lib/solargraph/source/chain/constant.rb +30 -30
- data/lib/solargraph/source/chain/global_variable.rb +11 -11
- data/lib/solargraph/source/chain/head.rb +33 -33
- data/lib/solargraph/source/chain/instance_variable.rb +11 -11
- data/lib/solargraph/source/chain/link.rb +33 -33
- data/lib/solargraph/source/chain/literal.rb +21 -21
- data/lib/solargraph/source/chain/variable.rb +11 -11
- data/lib/solargraph/source/change.rb +77 -77
- data/lib/solargraph/source/cursor.rb +157 -157
- data/lib/solargraph/source/node_chainer.rb +96 -96
- data/lib/solargraph/source/node_methods.rb +225 -225
- data/lib/solargraph/source/source_chainer.rb +183 -183
- data/lib/solargraph/source_map.rb +169 -169
- data/lib/solargraph/source_map/clip.rb +145 -145
- data/lib/solargraph/source_map/completion.rb +21 -21
- data/lib/solargraph/source_map/mapper.rb +149 -149
- data/lib/solargraph/source_map/node_processor.rb +78 -78
- data/lib/solargraph/source_map/node_processor/alias_node.rb +19 -19
- data/lib/solargraph/source_map/node_processor/args_node.rb +28 -28
- data/lib/solargraph/source_map/node_processor/base.rb +68 -68
- data/lib/solargraph/source_map/node_processor/begin_node.rb +11 -11
- data/lib/solargraph/source_map/node_processor/block_node.rb +14 -14
- data/lib/solargraph/source_map/node_processor/casgn_node.rb +14 -14
- data/lib/solargraph/source_map/node_processor/cvasgn_node.rb +14 -14
- data/lib/solargraph/source_map/node_processor/def_node.rb +54 -54
- data/lib/solargraph/source_map/node_processor/defs_node.rb +21 -21
- data/lib/solargraph/source_map/node_processor/gvasgn_node.rb +12 -12
- data/lib/solargraph/source_map/node_processor/ivasgn_node.rb +18 -18
- data/lib/solargraph/source_map/node_processor/lvasgn_node.rb +16 -16
- data/lib/solargraph/source_map/node_processor/namespace_node.rb +26 -26
- data/lib/solargraph/source_map/node_processor/orasgn_node.rb +12 -12
- data/lib/solargraph/source_map/node_processor/sclass_node.rb +11 -11
- data/lib/solargraph/source_map/node_processor/send_node.rb +162 -162
- data/lib/solargraph/source_map/node_processor/sym_node.rb +11 -11
- data/lib/solargraph/source_map/region.rb +58 -58
- data/lib/solargraph/version.rb +3 -3
- data/lib/solargraph/views/environment.erb +53 -53
- data/lib/solargraph/workspace.rb +183 -183
- data/lib/solargraph/workspace/config.rb +170 -170
- data/lib/solargraph/yard_map.rb +298 -298
- data/lib/solargraph/yard_map/cache.rb +17 -17
- data/lib/solargraph/yard_map/core_docs.rb +163 -163
- data/lib/solargraph/yard_map/core_gen.rb +76 -76
- data/lib/yard-coregen.rb +16 -16
- data/lib/yard-solargraph.rb +18 -18
- data/solargraph.gemspec +37 -0
- data/travis-bundler.rb +10 -0
- metadata +19 -6
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
module Plugin
|
|
4
|
-
class Method < Base
|
|
5
|
-
attr_reader :name
|
|
6
|
-
attr_reader :path
|
|
7
|
-
attr_reader :return_type
|
|
8
|
-
attr_reader :parameters
|
|
9
|
-
attr_reader :scope
|
|
10
|
-
attr_reader :visibility
|
|
11
|
-
|
|
12
|
-
def initialize name:, path:, return_type:, parameters:
|
|
13
|
-
@name = name
|
|
14
|
-
@path = path
|
|
15
|
-
@return_type = return_type
|
|
16
|
-
@parameters = parameters
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
def completion_item_kind
|
|
20
|
-
Solargraph::LanguageServer::CompletionItemKinds::METHOD
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
module Plugin
|
|
4
|
+
class Method < Base
|
|
5
|
+
attr_reader :name
|
|
6
|
+
attr_reader :path
|
|
7
|
+
attr_reader :return_type
|
|
8
|
+
attr_reader :parameters
|
|
9
|
+
attr_reader :scope
|
|
10
|
+
attr_reader :visibility
|
|
11
|
+
|
|
12
|
+
def initialize name:, path:, return_type:, parameters:
|
|
13
|
+
@name = name
|
|
14
|
+
@path = path
|
|
15
|
+
@return_type = return_type
|
|
16
|
+
@parameters = parameters
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def completion_item_kind
|
|
20
|
+
Solargraph::LanguageServer::CompletionItemKinds::METHOD
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class ProxyType < Base
|
|
4
|
-
# @param location [Solargraph::Location]
|
|
5
|
-
# @param namespace [String]
|
|
6
|
-
# @param name [String]
|
|
7
|
-
# @param return_type [ComplexType]
|
|
8
|
-
def initialize location, namespace, name, return_type
|
|
9
|
-
super(location, namespace, name, '')
|
|
10
|
-
@return_complex_type = return_type
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def path
|
|
14
|
-
@path ||= begin
|
|
15
|
-
result = namespace.to_s
|
|
16
|
-
result += '::' unless result.empty? or name.to_s.empty?
|
|
17
|
-
result += name.to_s
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def context
|
|
22
|
-
@return_complex_type
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
# @param return_type [ComplexType]
|
|
26
|
-
# @return [ProxyType]
|
|
27
|
-
def self.anonymous return_type
|
|
28
|
-
parts = return_type.namespace.split('::')
|
|
29
|
-
namespace = parts[0..-2].join('::').to_s
|
|
30
|
-
name = parts.last.to_s
|
|
31
|
-
ProxyType.new(nil, namespace, name, return_type)
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class ProxyType < Base
|
|
4
|
+
# @param location [Solargraph::Location]
|
|
5
|
+
# @param namespace [String]
|
|
6
|
+
# @param name [String]
|
|
7
|
+
# @param return_type [ComplexType]
|
|
8
|
+
def initialize location, namespace, name, return_type
|
|
9
|
+
super(location, namespace, name, '')
|
|
10
|
+
@return_complex_type = return_type
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def path
|
|
14
|
+
@path ||= begin
|
|
15
|
+
result = namespace.to_s
|
|
16
|
+
result += '::' unless result.empty? or name.to_s.empty?
|
|
17
|
+
result += name.to_s
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def context
|
|
22
|
+
@return_complex_type
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# @param return_type [ComplexType]
|
|
26
|
+
# @return [ProxyType]
|
|
27
|
+
def self.anonymous return_type
|
|
28
|
+
parts = return_type.namespace.split('::')
|
|
29
|
+
namespace = parts[0..-2].join('::').to_s
|
|
30
|
+
name = parts.last.to_s
|
|
31
|
+
ProxyType.new(nil, namespace, name, return_type)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Reference < Base
|
|
4
|
-
autoload :Require, 'solargraph/pin/reference/require'
|
|
5
|
-
autoload :Superclass, 'solargraph/pin/reference/superclass'
|
|
6
|
-
autoload :Include, 'solargraph/pin/reference/include'
|
|
7
|
-
autoload :Extend, 'solargraph/pin/reference/extend'
|
|
8
|
-
|
|
9
|
-
def initialize location, namespace, name
|
|
10
|
-
super(location, namespace, name, '')
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
# @todo Should Reference.new be protected?
|
|
14
|
-
# class << self
|
|
15
|
-
# protected
|
|
16
|
-
# def new *args
|
|
17
|
-
# super
|
|
18
|
-
# end
|
|
19
|
-
# end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Reference < Base
|
|
4
|
+
autoload :Require, 'solargraph/pin/reference/require'
|
|
5
|
+
autoload :Superclass, 'solargraph/pin/reference/superclass'
|
|
6
|
+
autoload :Include, 'solargraph/pin/reference/include'
|
|
7
|
+
autoload :Extend, 'solargraph/pin/reference/extend'
|
|
8
|
+
|
|
9
|
+
def initialize location, namespace, name
|
|
10
|
+
super(location, namespace, name, '')
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
# @todo Should Reference.new be protected?
|
|
14
|
+
# class << self
|
|
15
|
+
# protected
|
|
16
|
+
# def new *args
|
|
17
|
+
# super
|
|
18
|
+
# end
|
|
19
|
+
# end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Reference
|
|
4
|
-
class Extend < Reference
|
|
5
|
-
def kind
|
|
6
|
-
Pin::EXTEND_REFERENCE
|
|
7
|
-
end
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Reference
|
|
4
|
+
class Extend < Reference
|
|
5
|
+
def kind
|
|
6
|
+
Pin::EXTEND_REFERENCE
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Reference
|
|
4
|
-
class Include < Reference
|
|
5
|
-
def kind
|
|
6
|
-
Pin::INCLUDE_REFERENCE
|
|
7
|
-
end
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Reference
|
|
4
|
+
class Include < Reference
|
|
5
|
+
def kind
|
|
6
|
+
Pin::INCLUDE_REFERENCE
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Reference
|
|
4
|
-
class Require < Reference
|
|
5
|
-
def initialize location, name
|
|
6
|
-
super(location, '', name)
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
def kind
|
|
10
|
-
Pin::REQUIRE_REFERENCE
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Reference
|
|
4
|
+
class Require < Reference
|
|
5
|
+
def initialize location, name
|
|
6
|
+
super(location, '', name)
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def kind
|
|
10
|
+
Pin::REQUIRE_REFERENCE
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Reference
|
|
4
|
-
class Superclass < Reference
|
|
5
|
-
def kind
|
|
6
|
-
Pin::SUPERCLASS_REFERENCE
|
|
7
|
-
end
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Reference
|
|
4
|
+
class Superclass < Reference
|
|
5
|
+
def kind
|
|
6
|
+
Pin::SUPERCLASS_REFERENCE
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
class Symbol < Base
|
|
4
|
-
# @param location [Solargraph::Location]
|
|
5
|
-
# @param name [String]
|
|
6
|
-
def initialize location, name
|
|
7
|
-
@name = name
|
|
8
|
-
@location = location
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def namespace
|
|
12
|
-
''
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
def kind
|
|
16
|
-
Pin::SYMBOL
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
def path
|
|
20
|
-
''
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
def completion_item_kind
|
|
24
|
-
Solargraph::LanguageServer::CompletionItemKinds::KEYWORD
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
def comments
|
|
28
|
-
''
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
def return_complex_type
|
|
32
|
-
@return_complex_type ||= Solargraph::ComplexType::SYMBOL
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def directives
|
|
36
|
-
[]
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
def deprecated?
|
|
40
|
-
false
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
class Symbol < Base
|
|
4
|
+
# @param location [Solargraph::Location]
|
|
5
|
+
# @param name [String]
|
|
6
|
+
def initialize location, name
|
|
7
|
+
@name = name
|
|
8
|
+
@location = location
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def namespace
|
|
12
|
+
''
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def kind
|
|
16
|
+
Pin::SYMBOL
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def path
|
|
20
|
+
''
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def completion_item_kind
|
|
24
|
+
Solargraph::LanguageServer::CompletionItemKinds::KEYWORD
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def comments
|
|
28
|
+
''
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def return_complex_type
|
|
32
|
+
@return_complex_type ||= Solargraph::ComplexType::SYMBOL
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def directives
|
|
36
|
+
[]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def deprecated?
|
|
40
|
+
false
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
module YardPin
|
|
4
|
-
autoload :YardMixin, 'solargraph/pin/yard_pin/yard_mixin'
|
|
5
|
-
autoload :Constant, 'solargraph/pin/yard_pin/constant'
|
|
6
|
-
autoload :Method, 'solargraph/pin/yard_pin/method'
|
|
7
|
-
autoload :Namespace, 'solargraph/pin/yard_pin/namespace'
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
module YardPin
|
|
4
|
+
autoload :YardMixin, 'solargraph/pin/yard_pin/yard_mixin'
|
|
5
|
+
autoload :Constant, 'solargraph/pin/yard_pin/constant'
|
|
6
|
+
autoload :Method, 'solargraph/pin/yard_pin/method'
|
|
7
|
+
autoload :Namespace, 'solargraph/pin/yard_pin/namespace'
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
module YardPin
|
|
4
|
-
class Constant < Pin::Constant
|
|
5
|
-
include YardMixin
|
|
6
|
-
|
|
7
|
-
def initialize code_object, location
|
|
8
|
-
super(location, code_object.namespace.to_s, code_object.name.to_s, comments_from(code_object), nil, nil, nil, code_object.visibility)
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
map = Solargraph::ApiMap.new
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
module YardPin
|
|
4
|
+
class Constant < Pin::Constant
|
|
5
|
+
include YardMixin
|
|
6
|
+
|
|
7
|
+
def initialize code_object, location
|
|
8
|
+
super(location, code_object.namespace.to_s, code_object.name.to_s, comments_from(code_object), nil, nil, nil, code_object.visibility)
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
map = Solargraph::ApiMap.new
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
module Solargraph
|
|
2
|
-
module Pin
|
|
3
|
-
module YardPin
|
|
4
|
-
class Method < Pin::Method
|
|
5
|
-
include YardMixin
|
|
6
|
-
|
|
7
|
-
def initialize code_object, location, name = nil, scope = nil, visibility = nil
|
|
8
|
-
comments = (code_object.docstring ? code_object.docstring.all : nil)
|
|
9
|
-
super(location, code_object.namespace.to_s, name || code_object.name.to_s, comments, scope || code_object.scope, visibility || code_object.visibility, get_parameters(code_object), nil)
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def return_complex_type
|
|
13
|
-
@return_complex_type ||= Solargraph::ComplexType.try_parse(Solargraph::CoreFills::CUSTOM_RETURN_TYPES[path]) if Solargraph::CoreFills::CUSTOM_RETURN_TYPES.has_key?(path)
|
|
14
|
-
super
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
private
|
|
18
|
-
|
|
19
|
-
def get_parameters code_object
|
|
20
|
-
return [] unless code_object.kind_of?(YARD::CodeObjects::MethodObject)
|
|
21
|
-
args = []
|
|
22
|
-
code_object.parameters.each do |a|
|
|
23
|
-
p = a[0]
|
|
24
|
-
unless a[1].nil?
|
|
25
|
-
p += ' =' unless p.end_with?(':')
|
|
26
|
-
p += " #{a[1]}"
|
|
27
|
-
end
|
|
28
|
-
args.push p
|
|
29
|
-
end
|
|
30
|
-
args
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
1
|
+
module Solargraph
|
|
2
|
+
module Pin
|
|
3
|
+
module YardPin
|
|
4
|
+
class Method < Pin::Method
|
|
5
|
+
include YardMixin
|
|
6
|
+
|
|
7
|
+
def initialize code_object, location, name = nil, scope = nil, visibility = nil
|
|
8
|
+
comments = (code_object.docstring ? code_object.docstring.all : nil)
|
|
9
|
+
super(location, code_object.namespace.to_s, name || code_object.name.to_s, comments, scope || code_object.scope, visibility || code_object.visibility, get_parameters(code_object), nil)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def return_complex_type
|
|
13
|
+
@return_complex_type ||= Solargraph::ComplexType.try_parse(Solargraph::CoreFills::CUSTOM_RETURN_TYPES[path]) if Solargraph::CoreFills::CUSTOM_RETURN_TYPES.has_key?(path)
|
|
14
|
+
super
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
private
|
|
18
|
+
|
|
19
|
+
def get_parameters code_object
|
|
20
|
+
return [] unless code_object.kind_of?(YARD::CodeObjects::MethodObject)
|
|
21
|
+
args = []
|
|
22
|
+
code_object.parameters.each do |a|
|
|
23
|
+
p = a[0]
|
|
24
|
+
unless a[1].nil?
|
|
25
|
+
p += ' =' unless p.end_with?(':')
|
|
26
|
+
p += " #{a[1]}"
|
|
27
|
+
end
|
|
28
|
+
args.push p
|
|
29
|
+
end
|
|
30
|
+
args
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|