Class: RubyLsp::Itsi::Addon

Inherits:
Addon
  • Object
show all
Defined in:
lib/ruby_lsp/itsi/addon.rb

Instance Method Summary collapse

Instance Method Details

#activate(global_state, message_queue) ⇒ Object



9
10
11
# File 'lib/ruby_lsp/itsi/addon.rb', line 9

def activate(global_state, message_queue)
  @message_queue = message_queue
end

#create_completion_listener(response_builder, node_context, dispatcher, uri) ⇒ Object



24
25
26
27
28
# File 'lib/ruby_lsp/itsi/addon.rb', line 24

def create_completion_listener(response_builder, node_context, dispatcher, uri)
  return unless uri.to_s.end_with?("Itsi.rb")
  @in_itsi_file = true
  CompletionListener.new(response_builder, node_context, dispatcher, uri)
end

#create_hover_listener(response_builder, node_context, dispatcher) ⇒ Object



30
31
32
33
34
# File 'lib/ruby_lsp/itsi/addon.rb', line 30

def create_hover_listener(response_builder, node_context, dispatcher)
  hl = dispatcher.listeners[:on_call_node_enter].find { |c| c.is_a?(RubyLsp::Listeners::Hover) }
  return unless hl.instance_variable_get("@path").to_s.end_with?("Itsi.rb")
  HoverListener.new(response_builder, node_context, dispatcher)
end

#deactivateObject



13
# File 'lib/ruby_lsp/itsi/addon.rb', line 13

def deactivate; end

#nameObject



15
16
17
# File 'lib/ruby_lsp/itsi/addon.rb', line 15

def name
  "Ruby LSP Itsi"
end

#versionObject



19
20
21
# File 'lib/ruby_lsp/itsi/addon.rb', line 19

def version
  "0.1.0"
end