class DL::Handle
クラスの継承リスト: DL::Handle < Object < Kernel
要約
オープンされたダイナミックライブラリを表すクラスです。 dlopen(3) が返すハンドラーのラッパーです。
特異メソッド
new(lib) -> DL::Handle
new(lib) {|handle| ... } -> DL::Handle
-
[TODO]
ライブラリ lib をオープンし、Handle オブジェクトとして返します。
ブロックを指定すれば、生成した Handle を引数としてブロックを実行します。 Handle はブロックの終りで自動的にクローズされます。
インスタンスメソッド
sym(func) -> DL::PtrData
self[func] -> DL::PtrData
-
[TODO]
関数やグローバル変数 func へのポインタを取得し、 DL::PtrData オブジェクトとして返します。
- [PARAM] func:
- 得たいシンボルの名前を文字列で与えます。
- [EXCEPTION] RuntimeError:
- シンボルが見つからなかった時に発生します。
sym(func, type) -> DL::Symbol
self[func, type] -> DL::Symbol
-
[TODO]
関数 func へのポインタを取得し、 DL::Symbol オブジェクトとして返します。 type は型修飾子からなる文字列で関数のプロトタイプを示します。
- [PARAM] func:
- 得たい関数の名前を文字列で与えます。
- [PARAM] type:
- 関数のプロトタイプを文字列で指定します。
- [EXCEPTION] RuntimeError:
- シンボルが見つからなかった時に発生します。
DL の「Type Specifiers」の項も参照して下さい。
close -> Integer
-
自身をクローズします。成功した場合は 0 を返します。そうでない場合は、 0 以外の整数を返します。
enable_close -> nil
disable_close -> nil
-
GC によるオブジェクトの回収時に、自身をクローズするかどうかを指定します。
to_i -> Integer
-
自身が表すハンドル(dlopen(3) が返したもの)のアドレスを返します。
to_ptr -> DL::PtrData
-
自身が表すハンドル(dlopen(3) が返したもの)へのポインタ DL::PtrData を返します。この返り値には、free 関数がセットされていません。
class DL::Handle