180件ヒット
[1-100件を表示]
(0.045秒)
種類
- インスタンスメソッド (132)
- ライブラリ (22)
- 特異メソッド (22)
- 文書 (4)
ライブラリ
- fiddle (132)
-
fiddle
/ import (22)
クラス
-
Fiddle
:: CStruct (11) -
Fiddle
:: Closure (11) -
Fiddle
:: Function (22) -
Fiddle
:: Handle (11) -
Fiddle
:: Pointer (88)
モジュール
-
Fiddle
:: Importer (11)
検索結果
先頭5件
-
fiddle (38144.0)
-
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
...使い方
通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
dl と基本的な使いかたは良く似ています。
Fiddle モジュール自体はプリミティブな機能しか提供していません。
Fiddle::Importer モジュ......ールは以下のようにユーザが定義した
モジュールを拡張する形で使います。
require "fiddle/import"
module M
extend Fiddle::Importer
end
以後、このモジュールで dlload や extern などのメソッドが使用できるようになります。
以下......あればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと見なします
: (unsigne......りに使います。
=== 使い方
通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
Fiddle モジュール自体はプリミティブな機能しか提供していません。
Fiddle::Importer モジュールは以下のようにユ......ーザが定義した
モジュールを拡張する形で使います。
require "fiddle/import"
module M
extend Fiddle::Importer
end
以後、このモジュールで dlload や extern などのメソッドが使用できるようになります。
以下のように dlload を使っ... -
Fiddle
:: Function # to _ i -> Integer (29107.0) -
関数ポインタのアドレスを整数で返します。
...関数ポインタのアドレスを整数で返します。
@see Fiddle::Function#ptr... -
Fiddle
:: Closure # to _ i -> Integer (29101.0) -
C の関数ポインタのアドレスを返します。
C の関数ポインタのアドレスを返します。 -
Fiddle
:: Handle # to _ i -> Integer (29101.0) -
自身が表すハンドル(dlopen(3) が返したもの)のアドレスを返します。
自身が表すハンドル(dlopen(3) が返したもの)のアドレスを返します。 -
Fiddle
:: Pointer # to _ i -> Integer (29101.0) -
自身が指すアドレスを整数で返します。
自身が指すアドレスを整数で返します。 -
Fiddle
:: CStruct # to _ i -> Integer (21101.0) -
保持している構造体の先頭アドレスを整数で返します。
保持している構造体の先頭アドレスを整数で返します。 -
Fiddle
:: Pointer # to _ int -> Integer (17101.0) -
自身が指すアドレスを整数で返します。
自身が指すアドレスを整数で返します。 -
Fiddle
:: Pointer . [](val) -> Fiddle :: Pointer (11126.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
...ェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする Pointer オブジェクトを返します。
@param val Ruby オブジェクトを指定します。
@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場......合に発生します
@raise TypeError 上記のいずれの変換も不可能であった場合に発生します
例:
require 'fiddle'
s = "abc"
p Fiddle::Pointer[s].to_i #=> 136186388
p [s].pack('p*').unpack('l!*')[0] #=> 136186388... -
Fiddle
:: Pointer . to _ ptr(val) -> Fiddle :: Pointer (11126.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
...ェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする Pointer オブジェクトを返します。
@param val Ruby オブジェクトを指定します。
@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場......合に発生します
@raise TypeError 上記のいずれの変換も不可能であった場合に発生します
例:
require 'fiddle'
s = "abc"
p Fiddle::Pointer[s].to_i #=> 136186388
p [s].pack('p*').unpack('l!*')[0] #=> 136186388... -
Fiddle
:: Pointer # +@ -> Fiddle :: Pointer (11120.0) -
自身の指す値を Pointer にして返します。
...り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s #=> "abc"...