このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

Ruby 2.0.0 リファレンスマニュアル

instance method DL::Function#bind

bind {|*args| ... }[permalink][rdoc]

自身に指定されたブロックをバインドします。自身に対して call メソッドが呼ばれたとき、生成時に与えられた DL::CFunc オブジェクトではなくこのブロックが呼ばれます。

例:

require 'dl/import'

cfunc = DL::CFunc.new(0, DL::TYPE_INT)
func  = DL::Function.new(cfunc, [DL::TYPE_INT])
func.bind{|i| i + 3  }
p func.call(2)             #=> 5