るりまサーチ

最速Rubyリファレンスマニュアル検索!
48件ヒット [1-48件を表示] (0.059秒)

別のキーワード

  1. _builtin to_r
  2. open3 pipeline_r
  3. matrix elements_to_r
  4. fileutils cp_r
  5. bigdecimal to_r

クラス

モジュール

キーワード

検索結果

Fiddle::Importer#import_symbol(name) -> Fiddle::Pointer (9210.0)

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

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

返り値はシンボルがロードされたメモリのアドレスを持つ Fiddle::Pointer
オブジェクトを返します。

@param name シンボル名(文字列)...

Fiddle::CStruct#to_ptr -> Fiddle::Pointer (6304.0)

保持している構造体へのポインタを返します。

保持している構造体へのポインタを返します。

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

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

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

これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出す...
...きます。

signature で関数の名前とシネグチャを指定します。例えば
"int compare(void*, void*)" のように指定します。

opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示することができます。

@return インポートし...
...@param signature 関数の名前とシネグチャ
@param opts オプション


r
equire 'fiddle/import'

module M
extend Fiddle::Importer
dlload "libc.so.6"
typealias "size_t", "unsigned long"
extern "int qsort(void*, size_t, size_t, void*)"

bind("int compare(voi...

Fiddle::Importer#sizeof(t) -> Integer (3109.0)

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

...
例えば、sizeof("char") は 1 を返します。
sizeof("char*") は環境によって 4 や 8 といった値を返します。

Fiddle::Importer#struct で定義した
構造体クラスを渡すと、その構造体のサイズを返します。
Fiddle::Importer#union で定義した共用...
...t がクラスの場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。

それ以外の場合は Pointer[t].size を返します。

@param t サイズを計算する対象
@raise Fiddle::DLError t として文字列を渡し、それ...
...ている型を Fiddle が知らなかった
場合に発生します

例:

r
equire 'fiddle/import'

module M
extend Fiddle::Importer
Timeval = struct(["long tv_sec", "long tv_usec"])
p sizeof("char") # => 1
p sizeof("void*") # => 8
p sizeof(Timeval) # => 16
end...