Sha256: 73b7b7971010b9bdba399868cfe3d9b0b1dfe338912b6600dd4bb089cad74f6f
Contents?: true
Size: 1.39 KB
Versions: 2
Compression:
Stored size: 1.39 KB
Contents
# typed: strict # frozen_string_literal: true require "ruby_lsp/addon" require_relative "rails_client" require_relative "hover" require_relative "code_lens" module RubyLsp module Rails class Addon < ::RubyLsp::Addon extend T::Sig sig { returns(RailsClient) } def client @client ||= T.let(RailsClient.new, T.nilable(RailsClient)) end sig { override.params(message_queue: Thread::Queue).void } def activate(message_queue) client.check_if_server_is_running! end sig { override.void } def deactivate; end # Creates a new CodeLens listener. This method is invoked on every CodeLens request sig do override.params( uri: URI::Generic, dispatcher: Prism::Dispatcher, ).returns(T.nilable(Listener[T::Array[Interface::CodeLens]])) end def create_code_lens_listener(uri, dispatcher) CodeLens.new(uri, dispatcher) end sig do override.params( nesting: T::Array[String], index: RubyIndexer::Index, dispatcher: Prism::Dispatcher, ).returns(T.nilable(Listener[T.nilable(Interface::Hover)])) end def create_hover_listener(nesting, index, dispatcher) Hover.new(client, nesting, index, dispatcher) end sig { override.returns(String) } def name "Ruby LSP Rails" end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ruby-lsp-rails-0.2.9 | lib/ruby_lsp/ruby_lsp_rails/addon.rb |
ruby-lsp-rails-0.2.8 | lib/ruby_lsp/ruby_lsp_rails/addon.rb |