私はProgramming Ruby 1.9 (3rd edition): The Pragmatic Programmers' Guideを読んでおり、コード例の1つについて質問があります。 101ページこの状況で収率は何ですか?
は、この例がある:each
方法において
class VowelFinder
include Enumerable
def initialize(string)
@string = string
end
def each
@string.scan(/[aeiou]/) do |vowel|
yield vowel
end
end
end
vf = VowelFinder.new("the quick brown fox jumped")
vf.inject(:+) # => "euiooue"
、scan
から各照合結果がyield
が呼び出されたブロックに渡されます。しかし、正確にはyield vowel
ラインは何ですか?私が理解するところでは、yield
は、メソッド内からブロック(メソッドに渡されたもの)を呼び出すために使用されます。この状況では何をしていますか?