class RuboCop::Cop::Rails::ActiveSupportAliases
This cop checks that ActiveSupport aliases to core ruby methods are not used.
@example
# good 'some_string'.start_with?('prefix') 'some_string'.end_with?('suffix') [1, 2, 'a'] << 'b' [1, 2, 'a'].unshift('b') # bad 'some_string'.starts_with?('prefix') 'some_string'.ends_with?('suffix') [1, 2, 'a'].append('b') [1, 2, 'a'].prepend('b')
Constants
- ALIASES
- MSG
Public Instance Methods
on_send(node)
click to toggle source
# File lib/rubocop/cop/rails/active_support_aliases.rb, line 40 def on_send(node) ALIASES.each_key do |aliased_method| register_offense(node, aliased_method) if public_send(aliased_method, node) end end
Private Instance Methods
autocorrect(node)
click to toggle source
# File lib/rubocop/cop/rails/active_support_aliases.rb, line 49 def autocorrect(node) return false if append(node) lambda do |corrector| method_name = node.loc.selector.source replacement = ALIASES[method_name.to_sym][:original] corrector.replace(node.loc.selector, replacement.to_s) end end
register_offense(node, method_name)
click to toggle source
# File lib/rubocop/cop/rails/active_support_aliases.rb, line 58 def register_offense(node, method_name) add_offense( node, message: format(MSG, ALIASES[method_name][:original], method_name) ) end