174件ヒット
[101-174件を表示]
(0.035秒)
種類
- インスタンスメソッド (114)
- 特異メソッド (24)
- 文書 (12)
- ライブラリ (12)
- クラス (12)
クラス
- Array (18)
-
Fiddle
:: Function (24) -
Fiddle
:: Pointer (48) - StringScanner (48)
検索結果
先頭5件
-
StringScanner
# pos -> Integer (3007.0) -
現在のスキャンポインタのインデックスを返します。
...現在のスキャンポインタのインデックスを返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.pos # => 0
s.scan(/\w+/) # => "test"
s.pos # => 4
s.scan(/\w+/) # => nil
s.pos # => 4
s.scan(/\s+/) # => " "
s.pos... -
StringScanner
# pos=(n) (3007.0) -
スキャンポインタのインデックスを n にセットします。
...長さを超える値を指定すると発生します。
@return n を返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\w+/) # => "est"
p s.pos = 7 # => 7
p s.scan(/\w+/) # => "ring"
begi... -
Array
# pack(template , buffer: String . new) -> String (107.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マシンで一般的な結果)
//... -
StringScanner (42.0)
-
StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。
...列スキャナクラスです。
簡単に高速なスキャナを記述できます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(......チしたらその後ろにポインタを進めます。
//emlist[例][ruby]{
require 'strscan'
## a string and a scan pointer ("_" = scan pointer)
s = StringScanner.new('This is an example string')
# _This is an example string s.eos? = false
s.scan(/\w+/)
# This_ is an example string......e 'strscan'
def case1
s = StringScanner.new('test string')
p s.scan(/t/) #=> "t"
p s.scan(/\w+/) #=> "est"
p s.scan(/string/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/string/) #=> "string"
end
def case2
s = StringScanner.new('test string')
p s.scan_until(/t/)... -
Fiddle
:: Function # call(*args) -> Integer|DL :: CPtr|nil (30.0) -
関数を呼び出します。
...関数を呼び出します。
Fiddle::Function.new で指定した引数と返り値の型に基いて
Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、
その返り値を Ruby のオブジェクトに変換して返します。
引数の変換は......以下の通りです。
: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェクトであれば......ます。
整数であればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer に
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと見なし... -
fiddle (30.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 を使用していることに注意してください。
==== コールバック
以下のようにモジュー......ブロックを呼ぶ Fiddle::Function オブジェクトです。
==== ポインタを扱う
fiddle においては、文字列/整数/Fiddle::Pointerをポインタとして
扱うことができます。
文字列をポインタ引数として渡すと文字列のメモリ領域を指す
ポ......引数の変換は以下の通りです。
: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェ... -
Array
# pack(template) -> String (7.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マシンで一般的な結果)
//...