パンくず
Ruby Cookbook
ブロックの呼び出しと作成
概要
ブロックの呼び出しと作成
内容
ラムダ構文によりブロックを変数として扱うことが可能。
また、その変数をメソッドの引数にしたり
戻り値にすることも可能です。
サンプルコード
# encoding: Windows-31J require "pp" # lambdaでブロックを宣言 multiplyer = lambda{ |x| puts x * 2 } multiplyer.call 2 multiplyer.call 4 # ブロックは引数で渡すこと、戻り値に返すことが可能 def use_lambda(&multiplyer) multiplyer end multiplyer = use_lambda{|x|puts x * 2} multiplyer.call 8 multiplyer.call 16
出力
4 8 16 32