class RuboCop::Cop::Style::NilLambda


Proc.new { nil if x }
proc {}
-> (x) { nil if x }
end
lambda do
-> {}
# good
end
break nil
Proc.new do
proc { nil }
end
next nil
lambda do
-> { nil }
# bad
@example
which can be replaced with an empty lambda or proc instead.
Checks for lambdas and procs that always return nil,

def autocorrect(corrector, node)

def autocorrect(corrector, node)
  range = if node.single_line?
            range_with_surrounding_space(node.body.source_range)
          else
            range_by_whole_lines(node.body.source_range, include_final_newline: true)
          end
  corrector.remove(range)
end

def on_block(node) # rubocop:disable InternalAffairs/NumblockHandler

rubocop:disable InternalAffairs/NumblockHandler
def on_block(node) # rubocop:disable InternalAffairs/NumblockHandler
  return unless node.lambda_or_proc?
  return unless nil_return?(node.body)
  message = format(MSG, type: node.lambda? ? 'lambda' : 'proc')
  add_offense(node, message: message) do |corrector|
    autocorrect(corrector, node)
  end
end