【发布时间】:2013-02-26 10:02:40
【问题描述】:
当我在 Ruby 1.9.3(还有 JRuby、Rubinius...)中执行以下操作时,它按预期工作:
enum = [1,2,3,4,5].each
#=> #<Enumerator: [1, 2, 3, 4, 5]:each>
enum.next
#=> 1
如果我在带有反向端口的 Ruby 1.8.7 上尝试相同的操作,则会发生以下情况:
require "backports"
enum = [1,2,3,4,5].each
#=> #<Enumerable::Enumerator:0x1057fd400>
enum.next
#=> ArgumentError: wrong number of arguments (1 for 0)
我在这里做错了什么?据我所知,我没有给出任何论据。
澄清:没有后端端口就不会发生这种情况
【问题讨论】:
-
为我工作:
>> p VERSION; enum = [1,2,3,4,5].each; p enum.next #=> "1.8.7" 1 -
@tokland 感谢您的意见。请参阅说明。
标签: ruby enumerator ruby-1.8.7