132件ヒット
[1-100件を表示]
(0.040秒)
ライブラリ
- fiddle (132)
クラス
-
Fiddle
:: Handle (72)
モジュール
- Fiddle (12)
キーワード
- BlockCaller (12)
- Closure (12)
- Fiddle (12)
- Handle (12)
-
RTLD
_ GLOBAL (12) -
RTLD
_ LAZY (12) -
RTLD
_ NOW (12) - new (24)
-
to
_ i (12)
検索結果
先頭5件
-
Fiddle
. # dlopen(lib) -> Fiddle :: Handle (35236.0) -
ダイナミックライブラリ lib をロードし、 Fiddle::Handle として返します。
...ダイナミックライブラリ lib をロードし、
Fiddle::Handle として返します。
Fiddle::Handle.new(lib) と等価です。
@param lib ロードしたいライブラリを文字列で与えます。
@raise Fiddle::DLError dlopen(3) に失敗した時に発生します。... -
Fiddle (14022.0)
-
fiddle の名前空間をなすモジュールです。
...fiddle の名前空間をなすモジュールです。
UNIX の dlopen(3) や Windows の LoadLibrary()
などのダイナミックリンカへの低レベルなインターフェースを提供するモジュールです。... -
Fiddle
:: Handle . new(lib , flags=Fiddle :: Handle :: RTLD _ LAZY|Fiddle :: Handle :: RTLD _ GLOBAL) -> Fiddle :: Handle (11372.0) -
ライブラリ lib をオープンし、Handle オブジェクトとして返します。
... dlopen(3) の第2引数として渡すフラグを指定できます。
Fiddle::Handle::RTLD_LAZY、Fiddle::Handle::RTLD_NOW
のどちらか一方を指定する必要があり、
またそれに Fiddle::Handle::RTLD_GLOBAL と OR を取ることができます。
詳しい意味は manpage(dlopen......@param flags フラグ
@raise Fiddle::DLError ライブラリのオープンに失敗した場合に発生します
例:
require 'fiddle'
h = Fiddle::Handle.new('libc.so.6')
i = h.sym('strlen')
func = Fiddle::Function.new(i, [Fiddle::TYPE_VOIDP], Fiddle::TYPE_INT)
p func.call("uxyz")... -
Fiddle
:: Handle . new(lib , flags=Fiddle :: Handle :: RTLD _ LAZY|Fiddle :: Handle :: RTLD _ GLOBAL) {|handle| . . . } -> Fiddle :: Handle (11372.0) -
ライブラリ lib をオープンし、Handle オブジェクトとして返します。
... dlopen(3) の第2引数として渡すフラグを指定できます。
Fiddle::Handle::RTLD_LAZY、Fiddle::Handle::RTLD_NOW
のどちらか一方を指定する必要があり、
またそれに Fiddle::Handle::RTLD_GLOBAL と OR を取ることができます。
詳しい意味は manpage(dlopen......@param flags フラグ
@raise Fiddle::DLError ライブラリのオープンに失敗した場合に発生します
例:
require 'fiddle'
h = Fiddle::Handle.new('libc.so.6')
i = h.sym('strlen')
func = Fiddle::Function.new(i, [Fiddle::TYPE_VOIDP], Fiddle::TYPE_INT)
p func.call("uxyz")... -
Fiddle
:: Closure (11054.0) -
コールバック関数を表すクラスです。
...ドを定義し、
new でオブジェクトを生成することで利用します。
require 'fiddle'
include Fiddle # TYPE_* を使うために include する
class Compare < Fiddle::Closure
# qsort の比較関数は 型が int(*)(void*, void*) であるため、
# このメ......Ptr#to_s で1文字の文字列に変換している
def call(x, y)
x.to_s(1) <=> y.to_s(1)
end
end
libc = DL.dlopen("/lib/libc.so.6")
qs = Fiddle::Function.new(libc["qsort"],
[TYPE_VOIDP, TYPE_INT, TYPE_INT, TYPE_VOIDP],......'fiddle'
include Fiddle # TYPE_* を使うために include する
compare = Class.new(Fiddle::Closure){
def call(x, y)
x.to_s(1) <=> y
end
}.new(TYPE_INT, [TYPE_VOIDP, TYPE_VOIDP])
単に Ruby のブロックを C の(コールバック)関数に変換したい場合は
Fiddle:... -
Fiddle
:: Closure :: BlockCaller (11036.0) -
Ruby のブロックをラップしたコールバック関数を表すクラスです。
...ラスです。
require 'fiddle'
include Fiddle
libc = Fiddle.dlopen("/lib/libc.so.6")
qs = Fiddle::Function.new(libc["qsort"],
[TYPE_VOIDP, TYPE_INT, TYPE_INT, TYPE_VOIDP],
TYPE_VOID)
compare = Fiddle::Closure::BlockCaller.new(TYPE... -
Fiddle
:: Handle :: RTLD _ GLOBAL -> Integer (11022.0) -
dlopen のフラグ RTLD_GLOBAL を表す定数です。
...dlopen のフラグ RTLD_GLOBAL を表す定数です。
DL::Handle.new の flags として用います。
詳しくは dlopen(3) を見てください。... -
Fiddle
:: Handle :: RTLD _ LAZY -> Integer (11022.0) -
dlopen のフラグ RTLD_LAZY を表す定数です。
...dlopen のフラグ RTLD_LAZY を表す定数です。
DL::Handle.new の flags として用います。
詳しくは dlopen(3) を見てください。... -
Fiddle
:: Handle :: RTLD _ NOW -> Integer (11022.0) -
dlopen のフラグ RTLD_NOW を表す定数です。
...dlopen のフラグ RTLD_NOW を表す定数です。
DL::Handle.new の flags として用います。
詳しくは dlopen(3) を見てください。...