In this HackerRank Ruby - Enumerable - Introduction problem solution we learned about various methods to iterate over a collection like unless, loop and the most commonly used each method.

Ruby, however, provides an Enumerable module which packages a bunch of methods which can be used with any other class by including it (referred to as mixing in). That means that programmers don't have to write all those methods many different times for different objects. As long as the custom object defines an each method and includes Enumerable module, it can get access to all of its magic.

In this challenge, you have been provided with a custom object called colors that defines its own each method. You need to iterate over the items and return an Array containing the values.

HackerRank Ruby - Enumerable - Introduction problem solution


Problem solution.

def iterate_colors(colors)
  result = []
  # Your code here
  colors.each do |color|
    result.push color
  end
  result
end


Second solution.

def iterate_colors(colors)
return colors.each_entry{ |color| color}.to_a
end


Third solution.

def iterate_colors(colors)
    color_set = Array.new
    colors.each do |color|
      color_set << color  
    end
    return color_set
end