class RuboCop::Cop::Money::ZeroMoney
def on_send(node)
def on_send(node) receiver, _ = *node money_zero(node) do |currency_arg| add_offense(node, message: format(MSG, currency: replacement_currency(currency_arg))) do |corrector| corrector.replace( node.loc.expression, "#{receiver.source}.new(0, #{replacement_currency(currency_arg)})", ) end end end
def replacement_currency(currency_arg)
def replacement_currency(currency_arg) return currency_arg.first.source unless currency_arg.empty? return "'#{cop_config["ReplacementCurrency"]}'" if cop_config['ReplacementCurrency'] 'Money::NULL_CURRENCY' end