class RuboCop::Cop::Style::ArrayJoin
This cop checks for uses of “*” as a substitute for join.
Not
all cases can reliably checked, due to Ruby's dynamic types, so we consider only cases when the first argument is an array literal or the second is a string literal.
@example
# bad %w(foo bar baz) * "," # good %w(foo bar baz).join(",")
Constants
- MSG
Public Instance Methods
autocorrect(node)
click to toggle source
# File lib/rubocop/cop/style/array_join.rb, line 29 def autocorrect(node) array, join_arg = join_candidate?(node).map(&:source) lambda do |corrector| corrector.replace(node.source_range, "#{array}.join(#{join_arg})") end end
on_send(node)
click to toggle source
# File lib/rubocop/cop/style/array_join.rb, line 25 def on_send(node) join_candidate?(node) { add_offense(node, location: :selector) } end