class RuboCop::Cop::Lint::DeprecatedClassMethods
File.exist?(some_path)
# good
@example
File.exists?(some_path)
# bad
@example
This cop checks for uses of the deprecated class method usages.
def autocorrect(node)
def autocorrect(node) lambda do |corrector| check(node) do |data| corrector.replace(node.loc.selector, data.replacement_method.to_s) end end end
def check(node)
def check(node) receiver, method_name, *_args = *node DEPRECATED_METHODS_OBJECT.each do |data| next unless data.class_nodes.include?(receiver) next unless method_name == data.deprecated_method yield data end end
def deprecated_method(data)
def deprecated_method(data) method_call(data.class_constant, data.deprecated_method) end
def method_call(class_constant, method)
def method_call(class_constant, method) format('%s.%s', class_constant, method) end
def on_send(node)
def on_send(node) check(node) do |data| add_offense(node, :selector, format(MSG, deprecated_method(data), replacement_method(data))) end end
def replacement_method(data)
def replacement_method(data) method_call(data.class_constant, data.replacement_method) end