J'ai quelques difficultés pour utiliser le bloc Ruby, en passant une méthode.Appelle les blocs une fois pour chaque élément d'un tableau, passant cet élément en paramètre
Comme dans le cas suivant, je voudrais afficher chaque élément de @array, d'exemple Box (en utilisant .each méthode):
class Box
def initialize
@array = [:foo, :bar]
end
def each(&block)
# well, hm..
end
end
a = Box.new
a.each { |element| puts element }
Merci, Patrick! –
+1 - C'est une solution assez décente. – RubyDubee
La bibliothèque Forwardable est une autre façon de gérer la délégation simple: 'require 'forwardable'', puis à l'intérieur Box:' extend Forwardable' et 'def_delegator (: @ array,: each)' –