Enumerable::Enumerator

该封装类使得each以外的方法,如each_byte等也能进行enumerate。

另外请参考enumerator.so

超类:

包含的模块:

类方法:

Enumerable::Enumerator.new(obj, method = :each, *args)

为obj对象生成一个使用method方法而非each来进行迭代操作的对象,并返回该对象。若指定了args的话,将会在调用method时把它传递出去。

例:
    str = "xyz"

    enum = Enumerable::Enumerator.new(str, :each_byte)
    a = enum.map {|b| '%02x' % b } #=> ["78", "79", "7a"]

方法:

each {...}

按照生成时的参数的规定,进行迭代操作。