Sha256: e0fb2d8a901ad7689bd3c6d9cc5bf03e3962cdd431defaf58fa15f11daba66ae

Contents?: true

Size: 1.06 KB

Versions: 73

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

module RuboCop
  module Cop
    module Style
      # This cop checks for pipes for empty block parameters. Pipes for empty
      # block parameters do not cause syntax errors, but they are redundant.
      #
      # @example
      #   # bad
      #   a do ||
      #     do_something
      #   end
      #
      #   # bad
      #   a { || do_something }
      #
      #   # good
      #   a do
      #   end
      #
      #   # good
      #   a { do_something }
      class EmptyBlockParameter < Base
        include EmptyParameter
        include RangeHelp
        extend AutoCorrector

        MSG = 'Omit pipes for the empty block parameters.'

        def on_block(node)
          send_node = node.send_node
          check(node) unless send_node.send_type? && send_node.lambda_literal?
        end

        private

        def autocorrect(corrector, node)
          block = node.parent
          range = range_between(block.loc.begin.end_pos, node.loc.expression.end_pos)

          corrector.remove(range)
        end
      end
    end
  end
end

Version data entries

73 entries across 73 versions & 8 rubygems

Version Path
plaid-14.10.0 vendor/bundle/ruby/2.6.0/gems/rubocop-0.91.1/lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.23.0 lib/rubocop/cop/style/empty_block_parameter.rb
plaid-14.7.0 vendor/bundle/ruby/2.6.0/gems/rubocop-0.91.1/lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.22.3 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.22.2 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.22.1 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.22.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.21.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.20.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.19.1 lib/rubocop/cop/style/empty_block_parameter.rb
rails_mini_profiler-0.2.0 vendor/bundle/ruby/3.0.0/gems/rubocop-1.18.3/lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.19.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.18.4 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.18.3 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.18.2 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.18.1 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.18.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.17.0 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.16.1 lib/rubocop/cop/style/empty_block_parameter.rb
rubocop-1.16.0 lib/rubocop/cop/style/empty_block_parameter.rb