class RuboCop::Cop::Metrics::MethodLength

This cop checks if the length a method exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable.

Private Instance Methods

code_length(node) click to toggle source
# File lib/rubocop/cop/metrics/method_length.rb, line 23
def code_length(node)
  lines = node.source.lines.to_a[1..-2] || []

  lines.count { |line| !irrelevant_line(line) }
end
message(length, max_length) click to toggle source
# File lib/rubocop/cop/metrics/method_length.rb, line 19
def message(length, max_length)
  format('Method has too many lines. [%d/%d]', length, max_length)
end
on_method_def(node, _method_name, _args, _body) click to toggle source
# File lib/rubocop/cop/metrics/method_length.rb, line 15
def on_method_def(node, _method_name, _args, _body)
  check_code_length(node)
end