Class: RuboCop::Formatter::ClangStyleFormatter
- Inherits:
-
SimpleTextFormatter
- Object
- BaseFormatter
- SimpleTextFormatter
- RuboCop::Formatter::ClangStyleFormatter
- Defined in:
- lib/rubocop/formatter/clang_style_formatter.rb
Overview
This formatter formats report data in clang style. The precise location of the problem is shown together with the relevant source code.
Direct Known Subclasses
Constant Summary
Constants inherited from SimpleTextFormatter
SimpleTextFormatter::COLOR_FOR_SEVERITY
Instance Attribute Summary
Attributes inherited from BaseFormatter
Instance Method Summary collapse
Methods inherited from SimpleTextFormatter
#file_finished, #finished, #report_summary, #started
Methods included from Colorizable
Methods included from PathUtil
issue_deprecation_warning, match_path?, relative_path
Methods included from TextUtil
Methods inherited from BaseFormatter
#file_finished, #file_started, #finished, #initialize, #started
Constructor Details
This class inherits a constructor from RuboCop::Formatter::BaseFormatter
Instance Method Details
#highlight_line(location) ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/rubocop/formatter/clang_style_formatter.rb', line 23 def highlight_line(location) column_length = if location.begin.line == location.end.line location.column_range.count else location.source_line.length - location.column end ' ' * location.column + '^' * column_length end |
#report_file(file, offenses) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/rubocop/formatter/clang_style_formatter.rb', line 9 def report_file(file, offenses) offenses.each do |o| output.printf("%s:%d:%d: %s: %s\n", cyan(smart_path(file)), o.line, o.real_column, colored_severity_code(o), (o)) source_line = o.location.source_line next if source_line.blank? output.puts(source_line) output.puts(highlight_line(o.location)) end end |