Как работает метод справочный оператор.: Работа?
В Ruby 2.7.0-preview1 введен оператор ссылки на метод .:
в качестве экспериментальной функции. (больше здесь и здесь).
Есть несколько абстрактных примеров того, как использовать этот новый оператор:
method = 42.:to_s
=> #<Method: Integer#to_s>
method.receiver
=> 42
method.name
=> :to_s
method.call
=> "42"
а также:
method = File.:read
=> #<Method: File.read>
method.call('/Users/foo/.zshrc')
=> "export ZSH=$HOME/.zsh"
Эти абстрактные примеры не представляют реальных реализаций. Каково простое английское объяснение цели и использования оператора ссылки на метод, определенного в практических и реальных примерах?
1 ответ
Оператор ссылки на метод .:
просто синтаксический сахар для Object#method
так же, как оператор вызова функции .()
, просто синтаксический сахар для #call
,
Таким образом, варианты использования для оператора ссылки на метод такие же, как сценарии использования для Object#method
метод... просто с меньшим количеством нажатий клавиш.