dlload(lib,...)
DL::dlopen を用いてライブラリをロードし、extend した モジュール内でそのライブラリで定義されている参照可能なシンボルを取得できるよ うにする。
extern(prototype)
Cの関数プロトタイプを与えることによって、その関数を呼び出すメソッドを動的に 定義することができる。頭文字が大文字の場合は小文字に自動的に変換される。
callback(proto)
Cの関数プロトタイプを与えることによって、既に定義されたRubyのメソッドをCの コールバック関数として扱うことができるようにする。 DL::Symbolオブジェクトを返す。
typealias(newtype, oldtype)
newtype型をoldtype型のエイリアスとして定義する。
newtypeで与えた型はextern
やcallback
メソッド
のプロトタイプを与えるときに利用する。
symbol(sym[, typespec])
シンボル名がsymのシンボルを取り出す。 typespecには型情報を与え、DL::Symbolオブジェクトを返す。 typespecが省略された場合、シンボルへの参照をDL::PtrDataオブジェクト として返す。
実際には、上記のメソッドは、DL::Importable::Internal
において定義されている。
Importable
モジュールは、Internal
モジュールをインクルードしているために、
Internal
で定義されたメソッドはImportable
モジュールによって提供される。