Ruby Language Méthodes existantes


Exemple

Si une méthode d'itération telle que each est appelée sans bloc, un Enumerator doit être renvoyé.

Cela peut être fait en utilisant la méthode enum_for :

def each
  return enum_for :each unless block_given?

  yield :x
  yield :y
  yield :z
end

Cela permet au programmeur de composer des opérations Enumerable :

each.drop(2).map(&:upcase).first
# => :Z