【发布时间】:2013-05-02 11:49:59
【问题描述】:
我一直在尝试设计我的只读 Array 数据结构,我真的很喜欢使用 Enumerable 类提供遍历选项的想法,但我找不到它的要求。在我看过的一些示例中,C 实现会寻找 #each 方法,但在我看来这还不够。
【问题讨论】:
-
仅供参考,
Enumerable是一个模块,而不是一个类。
标签: ruby enumerable
我一直在尝试设计我的只读 Array 数据结构,我真的很喜欢使用 Enumerable 类提供遍历选项的想法,但我找不到它的要求。在我看过的一些示例中,C 实现会寻找 #each 方法,但在我看来这还不够。
【问题讨论】:
Enumerable 是一个模块,而不是一个类。
标签: ruby enumerable
来自Pickaxe p。 474 也来自the core documentation:
类[混入Enumerable]必须提供方法
each,该方法 产生集合的连续成员。如果Enumerable#max, 使用min、sort或sort_by,集合中的对象 还必须实现一个有意义的<=>运算符,因为这些方法 依赖于集合成员之间的排序。
【讨论】: