Class: RubyLsp::Listeners::TestDiscovery Abstract
- Inherits:
-
Object
- Object
- RubyLsp::Listeners::TestDiscovery
- Includes:
- Requests::Support::Common
- Defined in:
- lib/ruby_lsp/listeners/test_discovery.rb
Overview
This class is abstract.
Constant Summary collapse
- DYNAMIC_REFERENCE_MARKER =
"<dynamic_reference>"
Instance Method Summary collapse
-
#initialize(response_builder, global_state, uri) ⇒ TestDiscovery
constructor
: (ResponseBuilders::TestCollection response_builder, GlobalState global_state, URI::Generic uri) -> void.
-
#on_class_node_leave(node) ⇒ Object
: (Prism::ClassNode node) -> void.
-
#on_module_node_enter(node) ⇒ Object
: (Prism::ModuleNode node) -> void.
-
#on_module_node_leave(node) ⇒ Object
: (Prism::ModuleNode node) -> void.
Methods included from Requests::Support::Common
#categorized_markdown_from_index_entries, #constant_name, #create_code_lens, #each_constant_path_part, #kind_for_entry, #markdown_from_index_entries, #namespace_constant_name, #not_in_dependencies?, #range_from_location, #range_from_node, #self_receiver?
Constructor Details
#initialize(response_builder, global_state, uri) ⇒ TestDiscovery
: (ResponseBuilders::TestCollection response_builder, GlobalState global_state, URI::Generic uri) -> void
13 14 15 16 17 18 19 |
# File 'lib/ruby_lsp/listeners/test_discovery.rb', line 13 def initialize(response_builder, global_state, uri) @response_builder = response_builder @uri = uri @index = global_state.index #: RubyIndexer::Index @visibility_stack = [:public] #: Array[Symbol] @nesting = [] #: Array[String] end |
Instance Method Details
#on_class_node_leave(node) ⇒ Object
: (Prism::ClassNode node) -> void
38 39 40 41 |
# File 'lib/ruby_lsp/listeners/test_discovery.rb', line 38 def on_class_node_leave(node) # rubocop:disable RubyLsp/UseRegisterWithHandlerMethod @visibility_stack.pop @nesting.pop end |
#on_module_node_enter(node) ⇒ Object
: (Prism::ModuleNode node) -> void
22 23 24 25 26 27 28 29 |
# File 'lib/ruby_lsp/listeners/test_discovery.rb', line 22 def on_module_node_enter(node) # rubocop:disable RubyLsp/UseRegisterWithHandlerMethod @visibility_stack << :public name = constant_name(node.constant_path) name ||= name_with_dynamic_reference(node.constant_path) @nesting << name end |
#on_module_node_leave(node) ⇒ Object
: (Prism::ModuleNode node) -> void
32 33 34 35 |
# File 'lib/ruby_lsp/listeners/test_discovery.rb', line 32 def on_module_node_leave(node) # rubocop:disable RubyLsp/UseRegisterWithHandlerMethod @visibility_stack.pop @nesting.pop end |