Sha256: 0a8f3086c4df9c78eb46ccf9eca114355829632a00c067a0e40b43b017434470

Contents?: true

Size: 1002 Bytes

Versions: 10

Compression:

Stored size: 1002 Bytes

Contents

# encoding: utf-8

module RuboCop
  module Cop
    module Style
      # This cop checks whether comments have a leading space
      # after the # denoting the start of the comment. The
      # leading space is not required for some RDoc special syntax,
      # like #++, #--, #:nodoc, etc.
      class LeadingCommentSpace < Cop
        MSG = 'Missing space after #.'

        def investigate(processed_source)
          processed_source.comments.each do |comment|
            next unless comment.text =~ /^#+[^#\s:+-]/
            next if comment.text.start_with?('#!') && comment.loc.line == 1

            add_offense(comment, :expression)
          end
        end

        def autocorrect(comment)
          expr = comment.loc.expression
          b = expr.begin_pos
          hash_mark = Parser::Source::Range.new(expr.source_buffer, b, b + 1)
          @corrections << lambda do |corrector|
            corrector.insert_after(hash_mark, ' ')
          end
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
rubyjobbuilderdsl-0.0.2 vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/leading_comment_space.rb
rubyjobbuilderdsl-0.0.1 vendor/bundle/ruby/2.1.0/gems/rubocop-0.26.0/lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.27.1 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.27.0 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.26.1 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.26.0 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.25.0 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.24.1 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.24.0 lib/rubocop/cop/style/leading_comment_space.rb
rubocop-0.23.0 lib/rubocop/cop/style/leading_comment_space.rb