gpt4 book ai didi

ruby - 如何确定指定方法源自哪个类?

转载 作者:数据小太阳 更新时间:2023-10-29 06:56:11 29 4
gpt4 key购买 nike

我从 this discussion 得到了这个问题.像object.m这样的方法调用并不总是意味着“object”类有一个“m”方法,就像对Array对象的find方法不是直接来自Array对象,而是来自混入的 Enumerable 模块。我的问题是,给定一个方法,我们如何确定该方法源自哪个类?

最佳答案

任何类/对象方法在 Ruby 中都是一个对象,并且有一些它自己的方法。

所以你可以这样做:

[].method(:count).inspect
=> "#<Method: Array#count>"

[].method(:detect).inspect
=> "#<Method: Array(Enumerable)#detect>"

快速使用 RegEx,您就完成了。

关于ruby - 如何确定指定方法源自哪个类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/467965/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com