るりまサーチ

最速Rubyリファレンスマニュアル検索!
60件ヒット [1-60件を表示] (0.020秒)

別のキーワード

  1. _builtin module_function
  2. module module_function
  3. function ptr
  4. function new
  5. function name

ライブラリ

クラス

キーワード

検索結果

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

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

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

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

args、ret_type で関...
...NTPTR_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.new('...
...libc.so.6')
func = Fiddle::Function.new(h.sym("strlen"), [Fiddle::TYPE_VOIDP],
Fiddle::TYPE_INT, name: "strlen")
p func.ptr == h.sym("strlen") # => true
p func.call("abc") # => 3
p func.name # => "strlen"

@param ptr C の関数を指す Fiddle::Pointer オブ...

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

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

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

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

ruby 1.8.4 feature (3180.0)

ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。

...ruby]: ruby インタプリタの変更
# * [api]: 拡張ライブラリ API
# * [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/メソッドなど
* 互換性のある変更
* on...
...22:32:13 2005 Yukihiro Matsumoto <matz@ruby-lang.org>
#
# * eval.c (set_trace_func): add rb_secure(4) to prevent adding
# tracing function.

$SAFE=4でtrace_funcの追加を禁止。

: printf [bug]

#Wed Dec 7 15:31:35 2005 Yukihiro Matsumoto <matz@ruby-lang.org>
#
# *...
...elete wrong call
# of "join".
#
# ?

: DL [bug]

#Thu Sep 29 10:26:18 2005 Tanaka Akira <akr@m17n.org>
#
# * ext/dl/dl.c (rb_io_to_ptr): abolish sizeof(FILE).
# [ruby-dev:27317]

FILEが不完全型としてしか定義されない環境に対応。((<ruby-dev:27317>))...

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

関数を呼び出します。

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

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

引数の変換は...
...ります。
IO オブジェクトであれば FILE* が渡されます。
整数であればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、...
...

: void
nil を返します

: (unsigned) char/short/int/long/long long
C の整数を Ruby の整数に変換します

: void*(つまり任意のポインタ型)
C のポインタを保持した Fiddle::Pointer を返します。

@param args 関数の引数
@see Fiddle::Function.new...

fiddle (42.0)

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

...l.malloc
e = M.gettimeofday(timeval, nil)

if e == 0
p timeval.tv_sec #=> 1173519547
end

上の例で、メモリの割り当てに M::Timeval.new ではなく
M::Timeval.malloc を使用していることに注意してください。

==== コールバック

以下のようにモジュー...
...oid*,void*)"){|ptr1,ptr2|
ptr
1[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 オブジェ...
...ります。
IO オブジェクトであれば FILE* が渡されます。
整数であればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、...

絞り込み条件を変える