ruby 方法reference operator .:是如何工作的?

fcipmucu  于 9个月前  发布在  Ruby
关注(0)|答案(1)|浏览(66)

Ruby 2.7.0-preview1引入了方法引用操作符.:作为实验特性。(更多herehere)。
有一些抽象的例子可以说明如何使用这个新运算符:

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"


这些抽象的例子并不能代表真实世界的实现。如何用简明的英语解释方法引用操作符的目的和用法,并根据实际和真实世界的例子进行定义?

更新

这个问题不是很有用,因为the method reference operator was removed from Ruby 2.7.0发布前。这个问题是留给历史的原因。

yrefmtwq

yrefmtwq1#

方法引用操作符.:只是Object#method的语法糖,就像函数调用操作符.()一样。
因此,方法引用操作符的用例与Object#method方法的用例完全相同...只是使用了更少的重复。

相关问题