brew/Library/Homebrew/formula_text_auditor.rb
Issy Long 2814d2285a
Make str variable names longer
- Three characters is the RuboCop limit for parameter names, but more
  descriptive is good.
- Requested in
  https://github.com/Homebrew/brew/pull/14922#pullrequestreview-1330848594,
  but the automerge was too quick for me to get to it.
2023-03-08 15:30:25 +00:00

45 lines
845 B
Ruby

# typed: true
# frozen_string_literal: true
module Homebrew
# Auditor for checking common violations in {Formula} text content.
#
# @api private
class FormulaTextAuditor
def initialize(path)
@text = path.open("rb", &:read)
@lines = @text.lines.to_a
end
def without_patch
@text.split("\n__END__").first
end
def trailing_newline?
/\Z\n/ =~ @text
end
def =~(other)
other =~ @text
end
def include?(string)
@text.include? string
end
def to_s
@text
end
def line_number(regex, skip = 0)
index = @lines.drop(skip).index { |line| line =~ regex }
index ? index + 1 : nil
end
def reverse_line_number(regex)
index = @lines.reverse.index { |line| line =~ regex }
index ? @lines.count - index : nil
end
end
end