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::DataPtr
オブジェクト
として返す。
実際には、上記のメソッドは、DL::Importable::Internal
において定義されている。
Importable
モジュールは、Internal
モジュールをインクルードしているために、
Internal
で定義されたメソッドはImportable
モジュールによって提供される。
*1 適当に文章など直して下さい。