class RuboCop::Cop::Style::InfiniteLoop
Use `Kernel#loop` for infinite loops.
@example
# bad while true work end # good loop do work end
Constants
- MSG
Public Instance Methods
autocorrect(node)
click to toggle source
# File lib/rubocop/cop/style/infinite_loop.rb, line 37 def autocorrect(node) condition_node, = *node start_range = node.loc.keyword.begin end_range = if node.loc.begin node.loc.begin.end else condition_node.source_range.end end lambda do |corrector| corrector.replace(start_range.join(end_range), 'loop do') end end
on_until(node)
click to toggle source
# File lib/rubocop/cop/style/infinite_loop.rb, line 29 def on_until(node) condition, = *node return unless condition.falsey_literal? add_offense(node, :keyword) end
on_while(node)
click to toggle source
# File lib/rubocop/cop/style/infinite_loop.rb, line 21 def on_while(node) condition, = *node return unless condition.truthy_literal? add_offense(node, :keyword) end