method
enum_for
enum_for(...)
public
Returns Enumerable::Enumerator.new(self, method, *args).
e.g.:
str = "xyz" enum = str.enum_for(:each_byte) a = enum.map {|b| '%02x' % b } #=> ["78", "79", "7a"] # protects an array from being modified a = [1, 2, 3] some_method(a.to_enum)
Register or
log in
to add new notes.
yonosoytu -
August 23, 2008
4 thanks
Needs requiring 'enumerator' to work
This method needs that you
require 'enumerator'
for this method to be available.
rob-twf -
May 27, 2009 - (>= v1_8_6_287)
3 thanks
map_with_index
If you want to access the element index when using map, you can do it with enum_for:
(1..6).enum_for(:each_with_index).map { |v, i| "index: #{i} value: #{v}" } #=> ["index: 0 value: 1", "index: 1 value: 2", "index: 2 value: 3", "index: 3 value: 4", "index: 4 value: 5", "index: 5 value: 6"]