Я немного разбираюсь. Что касается метода Ruby's Метод поиска Ruby - аргумент?
.find(ifnone = nil) { |obj| block }: от чтения documentation мне кажется, что вы должны иметь возможность передать метод в качестве аргумента, который будет выполняться в случае, если совпадений для указанных условий нет.
Он говорит:
"называет ifnone и возвращает результат, если он указан, или возвращает
nil
иначе."
Это похоже на работу с любым методом я создаю что уже возвращает ноль, говорят:
def message puts 'No match.' end
No match.
=>nil
Если я использую метод, который делает что-то вернуть, говорят:
def message p 'No match.' end
Я получу:
"No match."
NoMethodError: undefined method `call' for "No match.":String
Кто-нибудь будет достаточно любезен, чтобы объяснить мне, какой именно аргумент/метод фактически должен быть передан методу поиска здесь? Благодарю.
Я был соблазн игнорировать этот аргумент тоже. Рад, что мы оба что-то узнали! Я помню, что видел связанную статью некоторое время назад, но не смог найти ее снова. Спасибо: D –