Class: Kanayago::LSP::DiagnosticsProvider

Inherits:
Object
  • Object
show all
Defined in:
lib/kanayago/lsp/diagnostics.rb

Overview

Provides diagnostics for Ruby source code using Kanayago parser

Instance Method Summary collapse

Instance Method Details

#analyze(source) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/kanayago/lsp/diagnostics.rb', line 9

def analyze(source)
  diagnostics = []

  result = Kanayago.parse(source)

  if result.invalid?
    # Extract error information from SyntaxError
    error = result.error
    diagnostic = create_diagnostic(error, result.script_lines)
    diagnostics << diagnostic
  end

  diagnostics
end