module Solargraph::LanguageServer::Transport::Adapter
A common module for running language servers in Backport.
Public Instance Methods
closing()
click to toggle source
# File lib/solargraph/language_server/transport/adapter.rb, line 20 def closing @host.stop end
opening()
click to toggle source
# File lib/solargraph/language_server/transport/adapter.rb, line 10 def opening @host = Solargraph::LanguageServer::Host.new @host.add_observer self @host.start @data_reader = Solargraph::LanguageServer::Transport::DataReader.new @data_reader.set_message_handler do |message| process message end end
receiving(data)
click to toggle source
@param data [String]
# File lib/solargraph/language_server/transport/adapter.rb, line 25 def receiving data @data_reader.receive data end
update()
click to toggle source
# File lib/solargraph/language_server/transport/adapter.rb, line 29 def update if @host.stopped? shutdown else tmp = @host.flush write tmp unless tmp.empty? end end
Private Instance Methods
process(request)
click to toggle source
@param request [String] @return [void]
# File lib/solargraph/language_server/transport/adapter.rb, line 42 def process request @host.process(request) end
shutdown()
click to toggle source
# File lib/solargraph/language_server/transport/adapter.rb, line 46 def shutdown Backport.stop unless @host.options['transport'] == 'external' end