Module: RuboCop::Cop::PercentLiteral

Included in:
Style::PercentLiteralDelimiters, Style::PercentQLiterals, Style::UnneededCapitalW
Defined in:
lib/rubocop/cop/mixin/percent_literal.rb

Overview

Common functionality for handling percent literals.

Instance Method Summary collapse

Instance Method Details

#begin_source(node) ⇒ Object


17
18
19
# File 'lib/rubocop/cop/mixin/percent_literal.rb', line 17

def begin_source(node)
  node.loc.begin.source if node.loc.respond_to?(:begin) && node.loc.begin
end

#percent_literal?(node) ⇒ Boolean

Returns:

  • (Boolean)

7
8
9
10
# File 'lib/rubocop/cop/mixin/percent_literal.rb', line 7

def percent_literal?(node)
  return unless (begin_source = begin_source(node))
  begin_source.start_with?('%')
end

#process(node, *types) ⇒ Object


12
13
14
15
# File 'lib/rubocop/cop/mixin/percent_literal.rb', line 12

def process(node, *types)
  return unless percent_literal?(node) && types.include?(type(node))
  on_percent_literal(node)
end

#type(node) ⇒ Object


21
22
23
# File 'lib/rubocop/cop/mixin/percent_literal.rb', line 21

def type(node)
  node.loc.begin.source[0..-2]
end