jeudi, juin 30, 2005

Les blocks c'est fort!

Au début je ne pensais les utiliser trop souvent et en fait on en trouve un peu partout (exemple: IO.foreach).
Je n'ai pas encore eu besoin d'écrire de fonction qui utilise cette fonctionnalité moi même mais j'ai quand meme voulu essayer et il faut bien avouer que c'est sympa!
Ca permet d'injecter des instructions dans une méthode. Comme je ne suis peut être pas assez clair, voilà un exemple:
def yield_back_at_me
  2.times do
    yield
    puts "------"
  end
end

yield_back_at_me {puts "coucou"}
Résultat:
coucou
------
coucou
------

Aucun commentaire: