123456789_123456789_123456789_123456789_123456789_

Class: RuboCop::MagicComment::VimComment

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
self, EditorComment, MagicComment
Instance Chain:
self, EditorComment, MagicComment
Inherits: RuboCop::MagicComment::EditorComment
Defined in: lib/rubocop/magic_comment.rb

Overview

Wrapper for Vim style magic comments.

Examples:

Vim style comment

comment = RuboCop::MagicComment.parse(
  '# vim: filetype=ruby, fileencoding=ascii-8bit'
)

comment.encoding # => 'ascii-8bit'

Constant Summary

Instance Method Summary

EditorComment - Inherited

#encoding,
#without

Rewrite the comment without a given token type.

#match

Find a token starting with the provided keyword and extract its value.

#tokens

Individual tokens composing an editor specific comment string.

Instance Method Details

#encoding

For some reason the fileencoding keyword only works if there is at least one other token included in the string. For example

# works
  # vim: foo=bar, fileencoding=ascii-8bit
# does nothing
  # vim: foo=bar, fileencoding=ascii-8bit
[ GitHub ]

  
# File 'lib/rubocop/magic_comment.rb', line 251

def encoding
  super if tokens.size > 1
end

#extract_rbs_inline_value

Vim comments cannot specify RBS::inline behavior.

[ GitHub ]

  
# File 'lib/rubocop/magic_comment.rb', line 259

def extract_rbs_inline_value; end

#extract_typed

Vim comments cannot specify Sorbet typechecking behavior.

[ GitHub ]

  
# File 'lib/rubocop/magic_comment.rb', line 265

def extract_typed; end

#frozen_string_literal

Vim comments cannot specify frozen string literal behavior.

[ GitHub ]

  
# File 'lib/rubocop/magic_comment.rb', line 256

def frozen_string_literal; end

#shareable_constant_value

Vim comments cannot specify shareable constant values behavior.

[ GitHub ]

  
# File 'lib/rubocop/magic_comment.rb', line 262

def shareable_constant_value; end