Method: SQLint::Linter#run

Defined in:
lib/sqlint/linter.rb

#runObject



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/sqlint/linter.rb', line 12

def run
  [].tap do |results|
    begin
      PgQuery.parse(@input)
    rescue PgQuery::ParseError => e
      offset = e.location
      lines_before_error = @input[0...(offset)].split("\n")
      line_number = lines_before_error.size
      column_number = lines_before_error.any? ? lines_before_error.last.size : 1
      results << Lint.new(@filename, line_number, column_number, :error, e.message)
    end
  end
end