Class: Yoda::Server::InitializationProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/yoda/server/initialization_provider.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(session:, notifier:) ⇒ InitializationProvider

Returns a new instance of InitializationProvider.

Parameters:



12
13
14
15
# File 'lib/yoda/server/initialization_provider.rb', line 12

def initialize(session:, notifier:)
  @session = session
  @notifier = notifier
end

Instance Attribute Details

#notifierNotifier (readonly)

Returns:



8
9
10
# File 'lib/yoda/server/initialization_provider.rb', line 8

def notifier
  @notifier
end

#sessionSession (readonly)

Returns:



5
6
7
# File 'lib/yoda/server/initialization_provider.rb', line 5

def session
  @session
end

Instance Method Details

#provideLanguageServer::Protocol::Interface::ShowMessageParams?

Returns:

  • (LanguageServer::Protocol::Interface::ShowMessageParams, nil)


18
19
20
21
22
23
# File 'lib/yoda/server/initialization_provider.rb', line 18

def provide
  errors = Instrument.instance.hear(initialization_progress: method(:notify_initialization_progress)) do
    session.setup
  end
  build_complete_message(errors)
end