class Tailor::Rulers::TrailingNewlinesRuler
Public Class Methods
new(config, options)
click to toggle source
Calls superclass method
Tailor::Ruler::new
# File lib/tailor/rulers/trailing_newlines_ruler.rb, line 7 def initialize(config, options) super(config, options) add_lexer_observers :file_end end
Public Instance Methods
file_end_update(trailing_newline_count)
click to toggle source
Checks to see if the file's final character is a n. If it is, it just returns the text that was passed in. If it's not, it adds a n, since the current indentation-checking algorithm only checks indent levels when it parses a newline character (without this, indentation problems on the final line won't ever get caught).
@param [Fixnum] trailing_newline_count
# File lib/tailor/rulers/trailing_newlines_ruler.rb, line 36 def file_end_update(trailing_newline_count) measure(trailing_newline_count) end
measure(trailing_newline_count)
click to toggle source
Checks to see if the number of newlines at the end of the file is not equal to the value at +@config+.
@param [Fixnum] trailing_newline_count The number of newlines at the end
of the file.
# File lib/tailor/rulers/trailing_newlines_ruler.rb, line 17 def measure(trailing_newline_count) if trailing_newline_count != @config lineno = '<EOF>' column = '<EOF>' msg = "File has #{trailing_newline_count} trailing " msg << "newlines, but should have #{@config}." @problems << Problem.new(problem_type, lineno, column, msg, @options[:level]) end end