lib/rubocop/cop/style/lambda.rb in rubocop-0.67.2 vs lib/rubocop/cop/style/lambda.rb in rubocop-0.68.0
- old
+ new
@@ -108,17 +108,21 @@
'all'
end
end
def autocorrect_method_to_literal(corrector, node)
- block_method, args = *node
- corrector.replace(block_method.source_range, '->')
- return if args.children.empty?
+ corrector.replace(node.send_node.source_range, '->')
- arg_str = "(#{lambda_arg_string(args)})"
- whitespace_and_old_args = node.loc.begin.end.join(args.loc.end)
- corrector.insert_after(block_method.source_range, arg_str)
- corrector.remove(whitespace_and_old_args)
+ return unless node.arguments?
+
+ arg_str = "(#{lambda_arg_string(node.arguments)})"
+
+ corrector.insert_after(node.send_node.source_range, arg_str)
+ corrector.remove(arguments_with_whitespace(node))
+ end
+
+ def arguments_with_whitespace(node)
+ node.loc.begin.end.join(node.arguments.loc.end)
end
def lambda_arg_string(args)
args.children.map(&:source).join(', ')
end