156件ヒット
[1-100件を表示]
(0.026秒)
クラス
-
Fiddle
:: Function (60) -
Fiddle
:: Handle (24) -
Fiddle
:: Pointer (24)
モジュール
-
Fiddle
:: Importer (48)
検索結果
先頭5件
-
Fiddle
:: Importer # union(signature) -> Class (6102.0) -
C の共用体型に対応する Ruby のクラスを構築して返します。
...定義する方法は Fiddle::Importer#struct と
ほぼ同様です。C における
typedef union epoll_data
{
void *ptr;
int fd;
uint32_t u32;
uint64_t u64;
} epoll_data_t;
は、Ruby上では
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload "li......unsigned int")
typealias("uint64_t", "unsigned long long")
EPollData = union(["void *ptr",
"int fd",
"uint32_t u32",
"uint64_t u64",
])
end
となります。
返されるクラスは Fiddle::CUn... -
Fiddle
:: Function # ptr -> Integer | Fiddle :: Function (3103.0) -
関数ポインタを返します。
...関数ポインタを返します。
Fiddle::Function.new の第1引数として指定したものを返します。... -
Fiddle
:: Function # abi -> Integer (3003.0) -
呼出規約を返します。
...呼出規約を返します。
@see Fiddle::Function.new... -
Fiddle
:: Function # call(*args) -> Integer|DL :: CPtr|nil (3003.0) -
関数を呼び出します。
...関数を呼び出します。
Fiddle::Function.new で指定した引数と返り値の型に基いて
Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、
その返り値を Ruby のオブジェクトに変換して返します。
引数の変換は......以下の通りです。
: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェクトであれば......to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと見なします
: (unsigned) char/short/int/long/long long
Ruby の整数を C... -
Fiddle
:: Function # name -> nil | String (3003.0) -
関数の名前を返します。
...関数の名前を返します。
名前が定義されていない場合は nil を返します。
@see Fiddle::Function.new... -
Fiddle
:: Function # to _ i -> Integer (3003.0) -
関数ポインタのアドレスを整数で返します。
...関数ポインタのアドレスを整数で返します。
@see Fiddle::Function#ptr... -
Fiddle
:: Handle # [](func) -> Integer (103.0) -
関数やグローバル変数 func へのポインタを取得し、整数として返します。
...ーバル変数 func へのポインタを取得し、整数として返します。
@param func 得たいシンボルの名前を文字列で与えます。
@raise Fiddle::DLError シンボルが見つからなかった時に発生します。
require 'fiddle'
h = Fiddle::Handle.new('libc... -
Fiddle
:: Handle # sym(func) -> Integer (103.0) -
関数やグローバル変数 func へのポインタを取得し、整数として返します。
...ーバル変数 func へのポインタを取得し、整数として返します。
@param func 得たいシンボルの名前を文字列で与えます。
@raise Fiddle::DLError シンボルが見つからなかった時に発生します。
require 'fiddle'
h = Fiddle::Handle.new('libc... -
Fiddle
:: Pointer # free -> Fiddle :: CFunc (103.0) -
GC がメモリを解放するのに使用する Fiddle::CFunc オブジェクトを返します。
...GC がメモリを解放するのに使用する Fiddle::CFunc オブジェクトを返します。
これは普通 Fiddle::Pointer#free= や Fiddle::Pointer.new によって設定されます。...