5件ヒット
[1-5件を表示]
(0.014秒)
別のキーワード
検索結果
先頭5件
-
Fiddle
:: Function # call(*args) -> Integer|DL :: CPtr|nil (316.0) -
関数を呼び出します。
...関数を呼び出します。
Fiddle::Function.new で指定した引数と返り値の型に基いて
Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、
その返り値を Ruby のオブジェクトに変換して返します。
引数の変換は......以下の通りです。
: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェクトであれば......渡されます。
整数であればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと... -
Fiddle
:: Function # name -> nil | String (313.0) -
関数の名前を返します。
...関数の名前を返します。
名前が定義されていない場合は nil を返します。
@see Fiddle::Function.new... -
Fiddle
:: Function # ptr -> Integer | Fiddle :: Function (313.0) -
関数ポインタを返します。
...関数ポインタを返します。
Fiddle::Function.new の第1引数として指定したものを返します。... -
Fiddle
:: Importer # [](name) -> Fiddle :: Function|nil (310.0) -
Fiddle::Importer#extern でインポートした関数の Fiddle::Function オブジェクト を返します。
...Fiddle::Importer#extern でインポートした関数の
Fiddle::Function オブジェクト
を返します。
name という名前の関数が存在しない場合は nil を返します。
@param name 関数の名前の文字列... -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (25.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
...インポートします。
これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出すことができます。
signature で関数の名前とシネグチャを指定し......す。
@return インポートした関数を表す Fiddle::Function オブジェクトを返します。
@param signature 関数の名前とシネグチャ
@param opts オプション
例
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload "libc.so.6"
typealias "si......are(void*, void*)"){|px, py|
x = px.to_s(Fiddle::SIZEOF_INT).unpack("i!")
y = py.to_s(Fiddle::SIZEOF_INT).unpack("i!")
x <=> y
}
end
data = [32, 180001, -13, -1, 0, 49].pack("i!*")
M.qsort(Fiddle::Pointer[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!...