242件ヒット
[201-242件を表示]
(0.088秒)
種類
- インスタンスメソッド (154)
- 特異メソッド (33)
- ライブラリ (33)
- 定数 (11)
- クラス (11)
ライブラリ
- ビルトイン (44)
- csv (11)
-
fiddle
/ import (66) - openssl (11)
-
rexml
/ document (66) - stringio (11)
クラス
-
ARGF
. class (11) - CSV (11)
- Encoding (22)
- IO (11)
-
REXML
:: DocType (11) -
REXML
:: Entity (11) -
REXML
:: ExternalEntity (33) - StringIO (11)
モジュール
-
Fiddle
:: Importer (66) -
OpenSSL
:: ASN1 (11)
キーワード
- EXTERNAL (11)
- ExternalEntity (11)
- [] (11)
- bind (11)
-
default
_ external (11) -
default
_ external= (11) - dlload (11)
- external (11)
-
external
_ encoding (44) -
external
_ id (11) - fiddle (11)
-
fiddle
/ import (11) -
fiddle
/ types (11) - new (11)
- struct (11)
-
to
_ s (11) - typealias (11)
- write (11)
検索結果
先頭4件
-
fiddle
/ types (6006.0) -
C の型の別名を定義するライブラリです。
...。
Fiddle::Win32Types や Fiddle::BasicTypes を Module#include する
ことで、Fiddle::Importer#extern や Fiddle::Importer#struct で
利用できる型が増えます。内部で Fiddle::Importer#typealias を
呼び出しています。
実装の問題があるため、 Fiddle::Importer#dl......呼びだしてから
include してください。
例
require 'fiddle/import'
require 'fiddle/types'
module M
extend Fiddle::Importer
dlload "libc.so.6" # include の前に dlload を呼ぶ
include Fiddle::BasicTypes
end
# uint は Fiddle::BasicTypes によって定義......された型で、unsigned int の別名
p(M.sizeof("uint") == M.sizeof("unsigned int"))... -
Fiddle
:: Importer # [](name) -> Fiddle :: Function|nil (3116.0) -
Fiddle::Importer#extern でインポートした関数の Fiddle::Function オブジェクト を返します。
...Fiddle::Importer#extern でインポートした関数の
Fiddle::Function オブジェクト
を返します。
name という名前の関数が存在しない場合は nil を返します。
@param name 関数の名前の文字列... -
Fiddle
:: Importer # struct(signature) -> Class (3112.0) -
C の構造体型に対応する Ruby のクラスを構築して返します。
...せた表記ができます。そしてそれを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_usec;
};
という構造体型に対応して
Timeval = struct(["long tv_sec", "long tv_usec"])
として構造......* initialize
* to_ptr
* to_i
* 構造体の各メンバへのアクセサ
返されるクラスは Fiddle::CStruct を継承しています。詳しくは
そちらを参照してください。
@param signature 構造体の各要素を文字列で表現したものの配列
require 'fid......dle/import'
module M
extend Fiddle::Importer
dlload "libc.so.6"
extern "int gettimeofday(void*, void*)"
Timeval = struct(["long tv_sec", "long tv_usec"])
end
time = M::Timeval.malloc
M.gettimeofday(time, Fiddle::NULL)
p time.tv_sec
p time.tv_usec... -
Fiddle
:: Importer # dlload(*libs) -> () (3106.0) -
C の動的ライブラリをモジュールにインポートします。
...込んだライブラリの関数は Fiddle::Importer#extern で
インポートできます。
複数のライブラリを指定することができます。
ファイル名文字列を指定することでそのライブラリをインポートします。
Fiddle::Handle を渡すとそのハン......が指しているライブラリをインポート
します。
このメソッドは同じモジュールで2回呼ばないでください。
@param libs インポートするライブラリ
@raise Fiddle::DLError ライブラリのインポートができなかった場合に発生します...