Требования по включению перечислимых - PullRequest
4 голосов
/ 20 января 2012

Я пытался спроектировать структуру данных массива «только для чтения», и мне действительно нравится идея предоставления опций обхода с классом Enumerable, но я не могу найти требования к нему.В некоторых примерах, которые я посмотрел, реализация C ищет метод #each, но мне кажется, что этого не может быть достаточно.

1 Ответ

8 голосов
/ 20 января 2012

С Кирка с.474, а также из основной документации :

Класс [смешивание в Enumerable] должен предоставлять метод each, который возвращает последовательные члены коллекции.Если используются Enumerable#max, min, sort или sort_by, объекты в коллекции также должны реализовывать содержательный оператор <=>, поскольку эти методы основаны на упорядочении между членами коллекции.

...