class RubyLsp::Requests::Support::SyntaxTreeFormatter

:nodoc:

def initialize

: -> void
def initialize
  @options = begin
    opts = SyntaxTree::CLI::Options.new
    opts.parse(SyntaxTree::CLI::ConfigFile.new.arguments)
    opts
  end #: SyntaxTree::CLI::Options
end

def run_diagnostic(uri, document)

: (URI::Generic uri, RubyDocument document) -> Array[Interface::Diagnostic]?
@override
def run_diagnostic(uri, document)
  nil
end

def run_formatting(uri, document)

: (URI::Generic uri, RubyDocument document) -> String?
@override
def run_formatting(uri, document)
  path = uri.to_standardized_path
  return if path && @options.ignore_files.any? { |pattern| File.fnmatch?("*/#{pattern}", path) }
  SyntaxTree.format(document.source, @options.print_width, options: @options.formatter_options)
end

def run_range_formatting(uri, source, base_indentation)

: (URI::Generic uri, String source, Integer base_indentation) -> String?
@override
def run_range_formatting(uri, source, base_indentation)
  path = uri.to_standardized_path
  return if path && @options.ignore_files.any? { |pattern| File.fnmatch?("*/#{pattern}", path) }
  SyntaxTree.format(source, @options.print_width, base_indentation, options: @options.formatter_options)
end