Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > fiddle/importライブラリ > Fiddle::Importerモジュール

module Fiddle::Importer

クラスの継承リスト: Fiddle::Importer

要約

C の関数をモジュールにインポートするためのモジュールです。

対象となるモジュールに Object#extend することで、 そのモジュールにインポートできるようになります。

使いかたは fiddlefiddle/import を参照してください。

インスタンスメソッド

定義 説明
self[name] -> Fiddle::Function|nil

Fiddle::Importer#extern でインポートした関数の Fiddle::Function オブジェクト を返します。

bind(signature, *opts) { ... } -> Fiddle::Function

Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。

create_value(type, val = nil) -> Fiddle::CStruct
value(type, val = nil) -> Fiddle::CStruct

型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。

dlload(*libs) -> ()

C の動的ライブラリをモジュールにインポートします。

extern(signature, *opts) -> Fiddle::Function

Fiddle::Importer#dlload で取り込んだライブラリから C の関数をインポートします。

import_symbol(name) -> Fiddle::Pointer

取り込んだライブラリからシンボルをインポートします。

sizeof(t) -> Integer

C における sizeof(t) の値を返します。

struct(signature) -> Class

C の構造体型に対応する Ruby のクラスを構築して返します。

typealias(new, orig) -> ()

extern や struct で利用する型の別名を定義します。

union(signature) -> Class

C の共用体型に対応する Ruby のクラスを構築して返します。