Module: RuboCop::Cop::CodeLength

Includes:
ConfigurableMax
Included in:
ClassishLength, Metrics::MethodLength
Defined in:
lib/rubocop/cop/mixin/code_length.rb

Overview

Common functionality for checking length of code segments.

Instance Method Summary collapse

Methods included from ConfigurableMax

#max=, #parameter_name

Instance Method Details

#check_code_length(node, *_) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/rubocop/cop/mixin/code_length.rb', line 18

def check_code_length(node, *_)
  length = code_length(node)
  return unless length > max_length

  add_offense(node, :keyword, message(length, max_length)) do
    self.max = length
  end
end

#count_comments?Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/rubocop/cop/mixin/code_length.rb', line 14

def count_comments?
  cop_config['CountComments']
end

#irrelevant_line(source_line) ⇒ Object

Returns true for lines that shall not be included in the count.



28
29
30
# File 'lib/rubocop/cop/mixin/code_length.rb', line 28

def irrelevant_line(source_line)
  source_line.blank? || !count_comments? && comment_line?(source_line)
end

#max_lengthObject



10
11
12
# File 'lib/rubocop/cop/mixin/code_length.rb', line 10

def max_length
  cop_config['Max']
end