当前位置:  开发笔记 > 编程语言 > 正文

在ruby中将类方法转换为proc的惯用方法

如何解决《在ruby中将类方法转换为proc的惯用方法》经验,为你挑选了1个好方法。

假设我想Kernel.puts用Proc 来描述.我该怎么做?

我可以想到许多可能性;

Proc.new do |*args| Kernel.puts *args end
:puts.to_proc.curry[Kernel] # doesn't work, returns `nil` as puts is varargs

但两者都很冗长.



1> 小智..:

method是你想要的?它可以让您将方法保存到变量中.

2.1.0 :003 > m = Kernel.method(:puts)
 => #
2.1.0 :004 > m.call('hi')
hi

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有