包含Enumerable的要求

4

我一直在设计只读数组数据结构,我非常喜欢用Enumerable类提供遍历选项的想法,但是我找不到它的要求。在我看过的一些示例中,C实现寻找#each方法,但我觉得这可能不足够。


1
请注意,Enumerable是一个模块,而不是一个类。 - Frost
1个回答

8

来自《Ruby程序设计(第3版)》第474页和核心文档:

类[混入可枚举模块]必须提供一个方法each,该方法返回集合中连续的成员。 如果使用了Enumerable#maxminsortsort_by,则集合中的对象还必须实现有意义的<=>操作符,因为这些方法依赖于集合成员之间的排序。


2
同样的内容在 Ruby 文档中也有提到:http://ruby-doc.org/core-1.9.3/Enumerable.html - Aliaksei Kliuchnikau
@Alex,谢谢。我已经将那个链接添加到答案中了。 - Wayne Conrad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接