るりまサーチ

最速Rubyリファレンスマニュアル検索!
110件ヒット [1-100件を表示] (0.131秒)
トップページ > クエリ:l[x] > クエリ:p[x] > クエリ:io[x] > クエリ:fiddle[x]

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. _builtin p
  5. matrix p

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

fiddle (44180.0)

*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。

...*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。

dl と同等の機能を持ちますが、
dl は 2.0 以降deprecated となり、2.2.0 で削除されました。このライブラリ
を代わりに使います。

=== 使い方

通常...
...は fiddle/import ライブラリを require して
Fiddle
::Importer モジュールを使用します。
dl と基本的な使いかたは良く似ています。
Fiddle
モジュール自体はプリミティブな機能しか提供していません。
Fiddle
::Importer モジュールは以下...
..._callback2(void*,void*)"){|ptr1,ptr2|
p
tr1[0] <=> ptr2[0]
}
type
extern 'void qsort(void *, int, int, void *)'
end

buff = "3465721"
M.qsort(buff, buff.size, 1, M::QsortCallback)
p
buff #=> "1234567"

ここで M::QsortCallback はブロックを呼ぶ Fiddle::Function...
...は fiddle/import ライブラリを require して
Fiddle
::Importer モジュールを使用します。
Fiddle
モジュール自体はプリミティブな機能しか提供していません。
Fiddle
::Importer モジュールは以下のようにユーザが定義した
モジュールを拡...

Fiddle::Function#ptr -> Integer | Fiddle::Function (23407.0)

関数ポインタを返します。

...関数ポインタを返します。

Fiddle
::Function.new の第1引数として指定したものを返します。...

Fiddle::Pointer.to_ptr(val) -> Fiddle::Pointer (20350.0)

与えられた val と関連した Pointer オブジェクトを生成して返します。

...えられた val と関連した Pointer オブジェクトを生成して返します。

val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。

IO
オブジェクトの場合は FILE ポインタを表す Pointer オブ...
...ジェクトを返します。

val に to_ptr メソッドが定義されている場合は、val.to_ptr を呼び、
P
ointer オブジェクトに変換したものを返します。

val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。

上以外の...
...o_int)し
それをアドレスとする Pointer オブジェクトを返します。


@param val Ruby オブジェクトを指定します。

@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場合に発生します
@raise TypeError 上記のいずれの変換も...

Fiddle::Function#call(*args) -> Integer|DL::CPtr|nil (20236.0)

関数を呼び出します。

...関数を呼び出します。

Fiddle
::Function.new で指定した引数と返り値の型に基いて
Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、
その返り値を Ruby のオブジェクトに変換して返します。

引数の変換は...
...まり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle
::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO
オブジェクトであれば FILE* が渡されます。
整数...
...ます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと見なします

: (unsigned) char/short/int/long/long long
Ruby の...

Fiddle::Function.new(ptr, args, ret_type, abi=Fiddle::Function::DEFAULT, name: nil) -> Fiddle::Function (17886.0)

ptr (関数ポインタ)から Fiddle::Function オブジェクトを 生成します。

...ptr (関数ポインタ)から Fiddle::Function オブジェクトを
生成します。

p
tr には Fiddle::Handle から Fiddle::Handle#sym などで取りだした
関数ポインタ(を表す整数)、もしくは関数を指している
Fiddle
::Pointer を渡します。

args、ret_type で関...
...YPE_INT」 のように符号を反転させると unsigned を
意味します。
* Fiddle::TYPE_VOID
* Fiddle::TYPE_VOIDP
* Fiddle::TYPE_CHAR
* Fiddle::TYPE_SHORT
* Fiddle::TYPE_INT
* Fiddle::TYPE_LONG
* Fiddle::TYPE_LONG_LONG
* Fiddle::TYPE_FLOAT
* Fiddle::TYPE_DOUBLE
* Fiddle...
...TYPE_INTPTR_T
* Fiddle::TYPE_UINTPTR_T
* Fiddle::TYPE_PTRDIFF_T
* Fiddle::TYPE_SIZE_T
* Fiddle::TYPE_SSIZE_T


abi で呼出規約を指定します。
* Fiddle::Function::DEFAULT
* Fiddle::Function::STDCALL
のどちらかを指定します。

require 'fiddle'

h = Fiddle::Handle...

絞り込み条件を変える

Fiddle::Pointer.[](val) -> Fiddle::Pointer (17350.0)

与えられた val と関連した Pointer オブジェクトを生成して返します。

...えられた val と関連した Pointer オブジェクトを生成して返します。

val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。

IO
オブジェクトの場合は FILE ポインタを表す Pointer オブ...
...ジェクトを返します。

val に to_ptr メソッドが定義されている場合は、val.to_ptr を呼び、
P
ointer オブジェクトに変換したものを返します。

val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。

上以外の...
...o_int)し
それをアドレスとする Pointer オブジェクトを返します。


@param val Ruby オブジェクトを指定します。

@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場合に発生します
@raise TypeError 上記のいずれの変換も...

Fiddle::Importer#union(signature) -> Class (15224.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 "libc.so.6"
typealia...
...t")
typealias("uint64_t", "unsigned long long")

EPollData = union(["void *ptr",
"int fd",
"uint32_t u32",
"uint64_t u64",
])
end
となります。

返されるクラスは Fiddle::CUnion を継...
...承しています。

1.9.x ではこのメソッドで返されるクラスは正しく動作しません。
2.0以降では修正されています。

@param signature 共用体の各要素を文字列で表現したものの配列...

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

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

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

これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出す...
...
"int compare(void*, void*)" のように指定します。

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

@return インポートした関数を表す Fiddle::Function オブジェクトを返します。

@param signatu...
...@param opts オプション


require '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(void*, void*)"){|px, py|
x = px.to_s(Fiddle::SIZE...

Fiddle::Importer#extern(signature, *opts) -> Fiddle::Function (9435.0)

Fiddle::Importer#dlload で取り込んだライブラリから C の関数をインポートします。

...
Fiddle
::Importer#dlload で取り込んだライブラリから
C の関数をインポートします。

インポートした関数はそのモジュールにモジュール関数として定義されます。

signature で関数の名前とシネグチャを指定します。例えば
"int str...
...cmp(char*, char*)" のように指定することができます。

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

@return インポートした関数を表す Fiddle::Function オブジェクトを返します。

@param si...
...gnature 関数の名前とシネグチャ
@param opts オプション


require 'fiddle/import'

module M
extern Fiddle::Importer
dlload "libc.so.6"
extern "int strcmp(char*, char*)"
end

M.strcmp("abc", "abc") # => 0
M.strcmp("abc", "abd") # => -1...

Fiddle::Importer#[](name) -> Fiddle::Function|nil (9333.0)

Fiddle::Importer#extern でインポートした関数の Fiddle::Function オブジェクト を返します。

...Fiddle::Importer#extern でインポートした関数の
Fiddle
::Function オブジェクト
を返します。

name という名前の関数が存在しない場合は nil を返します。

@param name 関数の名前の文字列...

絞り込み条件を変える

<< 1 2 > >>