るりまサーチ

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

別のキーワード

  1. kernel require
  2. getoptlong require_order
  3. rubygems/custom_require require
  4. irb/ext/use-loader irb_require
  5. require execute

クラス

モジュール

キーワード

検索結果

<< 1 2 3 ... > >>

Fiddle::Closure (14.0)

コールバック関数を表すクラスです。

...メソッドを定義し、
new でオブジェクトを生成することで利用します。

require
'fiddle'
include Fiddle # TYPE_* を使うために include する

class Compare < Fiddle::Closure
# qsort の比較関数は 型が int(*)(void*, void*) であるため、
#...
...字の文字列に変換している
def call(x, y)
x.to_s(1) <=> y.to_s(1)
end
end

libc = DL.dlopen("/lib/libc.so.6")
qs = Fiddle::Function.new(libc["qsort"],
[TYPE_VOIDP, TYPE_INT, TYPE_INT, TYPE_VOIDP],
TYPE_VOID)
s...
...に作ることなしに
コールバックオブジェクトを作ることができます。
require
'fiddle'
include Fiddle # TYPE_* を使うために include する
compare = Class.new(Fiddle::Closure){
def call(x, y)
x.to_s(1) <=> y
end
}.new(TYPE_INT, [TYPE_VOIDP, TYPE_V...

Fiddle::Pointer#[](offset) -> Integer (9.0)

自身の指すアドレスに offset バイトを足したメモリ領域の先頭を整数として返します。

...ram offset 値を得たい領域のアドレスまでのオフセット
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します

例:

require
'fiddle'

s = 'abc'
cptr = Fiddle::Pointer[s]
p cptr[0] #=> 97
p cptr[1] #=...

Fiddle::Pointer#[](offset, len) -> String (9.0)

自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトを複製し、 文字列として返します。

...

@param len 値を得たい領域のサイズを指定します。
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します

例:

require
'fiddle'

s = 'abc'
cptr = Fiddle::Pointer[s]
p cptr[0, 1] #=> "a"
p cptr[1, 2] #=> "bc...

Fiddle::Pointer#[]=(offset, len, v) (9.0)

自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトに 文字列 v をコピーします。

...メモリ領域にセットしたいバイト列を文字列で指定します。

@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します

例:

require
'fiddle'

s = 'abc'
cptr = Fiddle::Pointer[s]
p cptr[1,2] = "AA"
p cptr.to_s #=> "aAA"...

Fiddle::Pointer#[]=(offset, n) (9.0)

自身の指すアドレスに offset バイトを足したメモリ領域を指定された n に書き換えます。

...領域を指定された n に書き換えます。

@param n 整数を指定します。
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します

例:

require
'fiddle'

s = 'abc'
cptr = Fiddle::Pointer[s]
cptr[0] = 65
p cptr.to_s #=> "Bbc"...

絞り込み条件を変える

Fiddle.#dlunwrap(addr) -> object (8.0)

指定されたアドレスの Ruby オブジェクトを返します。

...されたアドレスの Ruby オブジェクトを返します。

@param addr Fiddle.#dlwrap が返した Ruby オブジェクトのアドレス(整数)を指定します。

例:

require
'fiddle'
s = 'abc'
p addr = Fiddle.dlwrap(s) #=> 136122440
p Fiddle.dlunwrap(addr) #=> "abc"...

Fiddle.#dlwrap(obj) -> Integer (8.0)

指定されたオブジェクト obj のアドレスを表す整数を返します。

...指定されたオブジェクト obj のアドレスを表す整数を返します。

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

例:

require
'fiddle'
s = 'abc'
p addr = Fiddle.dlwrap(s) #=> 136122440
p Fiddle.dlunwrap(addr) #=> "abc"...

Fiddle.#free(addr) -> nil (8.0)

指定された addr が指すメモリ領域を開放します。

... Fiddle.#malloc が返した整数を addr に与えなければいけません。
そうでない場合、ruby インタプリタが異常終了します。

@param addr Fiddle.#malloc で確保されたメモリ領域を指す整数を指定します。

例:
require
'fiddle'
addr = Fiddle.mal...
...loc(10)
p addr #=> 136942800
Fiddle
.free(addr)...

Fiddle::Closure::BlockCaller (8.0)

Ruby のブロックをラップしたコールバック関数を表すクラスです。

...のクラスです。

require
'fiddle'
include Fiddle

libc = Fiddle.dlopen("/lib/libc.so.6")
qs = Fiddle::Function.new(libc["qsort"],
[TYPE_VOIDP, TYPE_INT, TYPE_INT, TYPE_VOIDP],
TYPE_VOID)
compare = Fiddle::Closure::BlockCaller.ne...
<< 1 2 3 ... > >>