Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > fiddleライブラリ > Fiddle::Functionクラス > call
call(*args) -> Integer|DL::CPtr|nil
[permalink][rdoc]関数を呼び出します。
Fiddle::Function.new で指定した引数と返り値の型に基いて Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、 その返り値を Ruby のオブジェクトに変換して返します。
引数の変換は以下の通りです。
nil ならば C の NULL に変換されます DL::CPtr は保持している C ポインタに変換されます。 適当に変換してから、C のポインタに変換します。 文字列であればその先頭ポインタになります。 IO オブジェクトであれば FILE* が渡されます。 整数であればそれがアドレスとみなされます。 どれでもなければ to_ptr を呼び出し DL::CPtr オブジェクトに 変換したのが用いられます。
Ruby の整数を C の整数に変換します。
Ruby の整数 or 浮動小数点数を C の浮動小数点数に変換します
返り値の変換は以下の通りです。
nil を返します
C の整数を Ruby の整数に変換します
C のポインタを保持した DL::CPtr を返します。
[SEE_ALSO] Fiddle::Function.new