4件ヒット
[1-4件を表示]
(0.052秒)
種類
- インスタンスメソッド (3)
- ライブラリ (1)
ライブラリ
-
fiddle
/ import (3)
モジュール
-
Fiddle
:: Importer (3)
キーワード
- bind (1)
- dlload (1)
-
import
_ symbol (1)
検索結果
先頭4件
-
fiddle
/ import (114145.0) -
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
...。
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload './libsum.so'
extern 'double sum(double*, int)'
end
p M.sum([2.0, 3.0, 4.0].pack('d*'), 3) #=> 9.0
また与えられた文字列の配列 s (長さlen)の各要素の最初の文字を buf にコピーする関数... -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (42319.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
Ruby のブロックを C の関数で wrap し、その関数をモジュールに
インポートします。
これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出すことができます。
signature で関数の名前とシネグチャを指定します。例えば
"int compare(void*, void*)" のように指定します。
opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示することができます。
@return インポートした関数を表す ... -
Fiddle
:: Importer # import _ symbol(name) -> Fiddle :: Pointer (42301.0) -
取り込んだライブラリからシンボルをインポートします。
取り込んだライブラリからシンボルをインポートします。
返り値はシンボルがロードされたメモリのアドレスを持つ Fiddle::Pointer
オブジェクトを返します。
@param name シンボル名(文字列) -
Fiddle
:: Importer # dlload(*libs) -> () (24301.0) -
C の動的ライブラリをモジュールにインポートします。
C の動的ライブラリをモジュールにインポートします。
これで取り込んだライブラリの関数は Fiddle::Importer#extern で
インポートできます。
複数のライブラリを指定することができます。
ファイル名文字列を指定することでそのライブラリをインポートします。
Fiddle::Handle を渡すとそのハンドルが指しているライブラリをインポート
します。
このメソッドは同じモジュールで2回呼ばないでください。
@param libs インポートするライブラリ
@raise Fiddle::DLError ライブラリのインポートができなかった場合に発生します