DidYouMean::Correctable 模块
常量
- SKIP_TO_S_FOR_SUPER_LOOKUP
公共实例方法
corrections() 点击切换源
# File lib/did_you_mean/core_ext/name_error.rb, line 49 def corrections @corrections ||= spell_checker.corrections end
detailed_message(highlight: true, did_you_mean: true, **) 点击切换源
调用超类方法
# File lib/did_you_mean/core_ext/name_error.rb, line 10 def detailed_message(highlight: true, did_you_mean: true, **) msg = super.dup return msg unless did_you_mean suggestion = DidYouMean.formatter.message_for(corrections) if highlight suggestion = suggestion.gsub(/.+/) { "\e[1m" + $& + "\e[m" } end msg << suggestion msg rescue super end
original_message() 点击切换源
仅用于兼容性
# File lib/did_you_mean/core_ext/name_error.rb, line 5 def original_message # we cannot use alias here because to_s end
spell_checker() 点击切换源
# File lib/did_you_mean/core_ext/name_error.rb, line 53 def spell_checker DidYouMean.spell_checkers[self.class.to_s].new(self) end
to_s() 点击切换源
调用超类方法
# File lib/did_you_mean/core_ext/name_error.rb, line 38 def to_s msg = super.dup suggestion = DidYouMean.formatter.message_for(corrections) msg << suggestion if !msg.include?(suggestion) msg rescue super end