2012-01-20 78 views
4

我一直在试图设计我的只读数组数据结构,我非常喜欢使用Enumerable类提供遍历选项的想法,但我无法找到它的要求。在我看过的一些示例中,C实现查找#each方法,但在我看来,它不够。包括枚举的要求

+1

仅供参考,'Enumerable'是一个模块,而不是一个类。 – Frost

回答

8

Pickaxe p。 474,并且还从the core documentation

类[在可枚举混合]必须提供一种方法each,其 产生集合的连续构件。如果Enumerable#maxminsort,或sort_by时,对象集合 中还必须实现一个有意义的<=>运营商,因为这些方法 依靠集合的成员之间的顺序。

+2

在ruby文档中也是这样说的:http://ruby-doc.org/core-1.9.3/Enumerable.html –

+0

@Alex,谢谢。我添加了该答案的链接。 –

+0

所以'#each'和'<=>',谢谢你的快速回复 – farnoy