Class: Pluginscan::LinesIssuesScanner

Inherits:
Object
  • Object
show all
Defined in:
lib/pluginscan/reports/issues_report/issues_scanner/file_issues_scanner.rb

Overview

Responsible for scanning each line of a file for issues of a certain type

Instance Method Summary collapse

Constructor Details

#initialize(check) ⇒ LinesIssuesScanner

Returns a new instance of LinesIssuesScanner.



24
25
26
27
# File 'lib/pluginscan/reports/issues_report/issues_scanner/file_issues_scanner.rb', line 24

def initialize(check)
  @line_issues_scanner = LineIssuesScanner.new(check)
  @check_findings = CheckFindings.new(check)
end

Instance Method Details

#scan(file_contents) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/pluginscan/reports/issues_report/issues_scanner/file_issues_scanner.rb', line 29

def scan(file_contents)
  string_io = StringIO.new(file_contents)
  @check_findings.tap do |check_findings|
    string_io.each_line do |line|
      check_findings.add @line_issues_scanner.scan(line, string_io.lineno)
    end
  end
end