Module: RuboCop::Cop::PercentLiteral

Included in:
Style::PercentLiteralDelimiters, Style::PercentQLiterals, Style::UnneededCapitalW, Style::UnneededInterpolation
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



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

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

#percent_literal?(node) ⇒ Boolean

Returns:

  • (Boolean)


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

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

#process(node, *types) ⇒ Object



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

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

#type(node) ⇒ Object



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

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