class RubbyCop::Cop::Style::MultilineIfThen
Checks for uses of the `then` keyword in multi-line if statements.
@example This is considered bad practice:
if cond then end
@example If statements can contain `then` on the same line:
if cond then a elsif cond then b end
Constants
- MSG
- NON_MODIFIER_THEN
Public Instance Methods
on_normal_if_unless(node)
click to toggle source
# File lib/rubbycop/cop/style/multiline_if_then.rb, line 25 def on_normal_if_unless(node) return unless non_modifier_then?(node) add_offense(node, :begin, format(MSG, node.keyword)) end
Private Instance Methods
autocorrect(node)
click to toggle source
# File lib/rubbycop/cop/style/multiline_if_then.rb, line 37 def autocorrect(node) lambda do |corrector| corrector.remove( range_with_surrounding_space(node.loc.begin, :left) ) end end
non_modifier_then?(node)
click to toggle source
# File lib/rubbycop/cop/style/multiline_if_then.rb, line 33 def non_modifier_then?(node) node.loc.begin && node.loc.begin.source_line =~ NON_MODIFIER_THEN end