Class: RuboCop::Cop::Performance::DoubleStartEndWith
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::Performance::DoubleStartEndWith
- Extended by:
- AutoCorrector
- Defined in:
- lib/rubocop/cop/performance/double_start_end_with.rb
Overview
Checks for consecutive ‘#start_with?` or `#end_with?` calls. These methods accept multiple arguments, so in some cases like when they are separated by `||`, they can be combined into a single method call.
‘IncludeActiveSupportAliases` configuration option is used to check for `starts_with?` and `ends_with?`. These methods are defined by Active Support.
Constant Summary collapse
- MSG =
'Use `%<replacement>s` instead of `%<original_code>s`.'- METHODS =
i[start_with? end_with?].to_set
- METHODS_WITH_ACTIVE_SUPPORT =
i[start_with? starts_with? end_with? ends_with?].to_set
Instance Method Summary collapse
Instance Method Details
#on_and(node) ⇒ Object
57 58 59 60 61 |
# File 'lib/rubocop/cop/performance/double_start_end_with.rb', line 57 def on_and(node) two_start_end_with_calls_negated(node, methods_to_check: methods) do |*matched| check(node, *matched) end end |
#on_or(node) ⇒ Object
51 52 53 54 55 |
# File 'lib/rubocop/cop/performance/double_start_end_with.rb', line 51 def on_or(node) two_start_end_with_calls(node, methods_to_check: methods) do |*matched| check(node, *matched) end end |