ライブラリ
- ビルトイン (33)
- fiddle (384)
-
fiddle
/ import (60) - strscan (60)
クラス
- Array (21)
-
Fiddle
:: CStruct (12) -
Fiddle
:: Function (24) -
Fiddle
:: Pointer (348) - String (12)
- StringScanner (48)
モジュール
-
Fiddle
:: Importer (36)
キーワード
- + (12)
- +@ (12)
- - (12)
- -@ (12)
- <=> (12)
- == (12)
- CStruct (12)
- Pointer (12)
- StringScanner (12)
- [] (36)
- []= (24)
- bind (12)
- call (12)
- eql? (12)
- fiddle (12)
- free (12)
- free= (12)
-
import
_ symbol (12) -
is
_ pointer _ to _ heap (12) - malloc (12)
- new (24)
- null? (12)
- pack (21)
- pack テンプレート文字列 (12)
- pointer= (12)
- pos (12)
- pos= (12)
- ptr (12)
- ref (12)
-
ruby 1
. 8 . 4 feature (12) - size (12)
- size= (12)
- sizeof (12)
-
to
_ i (12) -
to
_ int (12) -
to
_ ptr (24) -
to
_ s (24) -
to
_ str (24) -
to
_ value (12) - unpack (12)
検索結果
先頭5件
-
ruby 1
. 8 . 4 feature (12.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
...: File.join [bug]
#Wed Oct 19 08:28:32 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
#
# * file.c (rb_file_join): elements may contain null pointer strings.
# report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
NULLポインタを持つStringを渡すとFile.joinがSEG......c: fixed GC problem (backported HEAD 1.55 - 1.62)
# [ruby-dev:27839]
#
# * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
# NULL or not before S_FREE.
#
# * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
# in gram.c to... -
Array
# pack(template) -> String (6.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...きません。
//emlist[][ruby]{
["foo"].pack("p").unpack("p") # => ["foo"]
"xp\xC2\x85\vV\x00\x00".unpack("p")
# => ArgumentError: no associated pointer
//}
"p" や "P" は、nil を特別に扱い NULL
ポインタとして解釈します。(以下は、64bitマシンで一般的な結果)
//... -
Array
# pack(template , buffer: String . new) -> String (6.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...きません。
//emlist[][ruby]{
["foo"].pack("p").unpack("p") # => ["foo"]
"xp\xC2\x85\vV\x00\x00".unpack("p")
# => ArgumentError: no associated pointer
//}
"p" や "P" は、nil を特別に扱い NULL
ポインタとして解釈します。(以下は、64bitマシンで一般的な結果)
//... -
Fiddle
:: CStruct (6.0) -
C の構造体を表すクラスです。
...、 S#foo, S#foo= というアクセサが Integer とやりとり
するように定義され、 S#bar, S#bar= というアクセサが Fiddle::Pointer
でやりとりするように定義されます。
このクラスは実際にはこのドキュメントに書かれているメソッドを保... -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (6.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
...x.to_s(Fiddle::SIZEOF_INT).unpack("i!")
y = py.to_s(Fiddle::SIZEOF_INT).unpack("i!")
x <=> y
}
end
data = [32, 180001, -13, -1, 0, 49].pack("i!*")
M.qsort(Fiddle::Pointer[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!*") # => [-13, -1, 0, 32, 49, 180001]... -
Fiddle
:: Importer # sizeof(t) -> Integer (6.0) -
C における sizeof(t) の値を返します。
...の場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。
それ以外の場合は Pointer[t].size を返します。
@param t サイズを計算する対象
@raise Fiddle::DLError t として文字列を渡し、それが表している... -
String
# unpack(template) -> Array (6.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
...きません。
//emlist[][ruby]{
["foo"].pack("p").unpack("p") # => ["foo"]
"xp\xC2\x85\vV\x00\x00".unpack("p")
# => ArgumentError: no associated pointer
//}
"p" や "P" は、nil を特別に扱い NULL
ポインタとして解釈します。(以下は、64bitマシンで一般的な結果)
//... -
pack テンプレート文字列 (6.0)
-
pack テンプレート文字列
...きません。
//emlist[][ruby]{
["foo"].pack("p").unpack("p") # => ["foo"]
"xp\xC2\x85\vV\x00\x00".unpack("p")
# => ArgumentError: no associated pointer
//}
"p" や "P" は、nil を特別に扱い NULL
ポインタとして解釈します。(以下は、64bitマシンで一般的な結果)
//...