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
- #begin_source(node) ⇒ Object
- #percent_literal?(node) ⇒ Boolean
- #process(node, *types) ⇒ Object
- #type(node) ⇒ Object
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
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 |