るりまサーチ

最速Rubyリファレンスマニュアル検索!
88件ヒット [1-88件を表示] (0.064秒)
トップページ > クエリ:l[x] > ライブラリ:fiddle[x] > クエリ:NULL[x]

別のキーワード

  1. matrix l
  2. kernel $-l
  3. _builtin $-l
  4. lupdecomposition l
  5. l

クラス

モジュール

キーワード

検索結果

Fiddle::NULL -> DL::CPtr (24219.0)

C の NULL ポインタ

...C の NULL ポインタ...

Fiddle::Pointer#null? -> bool (12219.0)

自身が NULL なら true を返します。そうでないなら false を返します。

...自身が NULL なら true を返します。そうでないなら false を返します。...

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

関数を呼び出します。

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

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

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

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

: double/float
Ru...

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

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

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

(self + offset).to_s(len) と同等です。
offset + len が自身のサイズより小さいかを検証しません。

@param offset 値を得た...
...セットを整数で与えます。

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

例:

require 'fiddle'

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

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

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

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

str のサイズが len より小さい場合は、残りの領域を 0 で埋めます。
コピー先の領域が len より大きいか検証しません。

@param offset 書き...
...ram len 書き換えたいメモリ領域のサイズを整数で指定します。

@param 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::Importer#struct(signature) -> Class (3107.0)

C の構造体型に対応する Ruby のクラスを構築して返します。

...ignature に渡してデータを定義します。例えば C における
struct timeval {
l
ong tv_sec;
l
ong tv_usec;
};
という構造体型に対応して
Timeval = struct(["long tv_sec", "long tv_usec"])
として構造体に対応するクラスを生成します。

このメ...
...ラスには以下のメソッドが定義されています
* クラスメソッド malloc
* initialize
* to_ptr
* to_i
* 構造体の各メンバへのアクセサ
返されるクラスは Fiddle::CStruct を継承しています。詳しくは
そちらを参照してください。


@...
...のの配列

require 'fiddle/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...

Fiddle::Pointer#[](offset) -> Integer (3009.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, n) (3009.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"...