/usr/lib/ruby/vendor_ruby/did_you_mean/spell_checkers/method_name_checker.rb is in ruby-did-you-mean 1.0.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | module DidYouMean
class MethodNameChecker
include SpellCheckable
attr_reader :method_name, :receiver
def initialize(exception)
@method_name = exception.name
@receiver = exception.receiver
@has_args = !exception.args&.empty?
end
def candidates
{ method_name => method_names }
end
def method_names
method_names = receiver.methods + receiver.singleton_methods
method_names += receiver.private_methods if @has_args
method_names.delete(method_name)
method_names.uniq!
method_names
end
end
end
|