class RuboCop::Cop::Style::IfUnlessModifierOfIfUnless
Checks for if and unless statements used as modifiers of other if or unless statements.
@example
# bad tired? ? 'stop' : 'go faster' if running? # bad if tired? "please stop" else "keep going" end if running? # good if running? tired? ? 'stop' : 'go faster' end
Constants
- MSG
Public Instance Methods
Source
# File lib/rubocop/cop/style/if_unless_modifier_of_if_unless.rb, line 32 def on_if(node) return unless node.modifier_form? && node.body.if_type? add_offense(node.loc.keyword, message: format(MSG, keyword: node.keyword)) do |corrector| corrector.wrap(node.if_branch, "#{node.keyword} #{node.condition.source}\n", "\nend") corrector.remove(node.if_branch.source_range.end.join(node.condition.source_range.end)) end end
rubocop:disable Metrics/AbcSize