class RuboCop::Cop::Style::SpaceBeforeModifierKeyword
Here we check if modifier keywords are preceded by a space.
def autocorrect(node)
def autocorrect(node) ->(corrector) { corrector.insert_before(node.loc.keyword, ' ') } end
def elsif?(node)
def elsif?(node) node.loc.keyword.is?('elsif') end
def modifier?(node)
def modifier?(node) node.loc.respond_to?(:end) && node.loc.end.nil? && !elsif?(node) end
def on_if(node)
def on_if(node) return unless modifier?(node) kw = node.loc.keyword b = kw.begin_pos left_of_kw = Parser::Source::Range.new(kw.source_buffer, b - 1, b) add_offense(node, left_of_kw) unless left_of_kw.is?(' ') end