ライブラリ
- ビルトイン (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)
- 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)
- 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件
-
Fiddle
:: Pointer (18000.0) -
メモリ領域を表すクラスです。C 言語のポインタに相当します。
メモリ領域を表すクラスです。C 言語のポインタに相当します。
2.2.0 で削除された dl の DL::CPtr に対応します。
DL::CPtrとほぼ同じインターフェースを持ちます。 -
StringScanner
# pointer -> Integer (6101.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 # => 5
//}
@see StringScanner#charpos -
StringScanner
# pointer=(n) (6101.0) -
スキャンポインタのインデックスを n にセットします。
スキャンポインタのインデックスを n にセットします。
@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。
@return n を返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\... -
static inline int is
_ pointer _ to _ heap(void *ptr) (6100.0) -
-
Fiddle
:: Pointer . [](val) -> Fiddle :: Pointer (3160.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
...val と関連した Pointer オブジェクトを生成して返します。
val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。
IO オブジェクトの場合は FILE ポインタを表す Pointer オブジェクト......l.to_ptr を呼び、
Pointer オブジェクトに変換したものを返します。
val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする Pointer オブジェクト......@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場合に発生します
@raise TypeError 上記のいずれの変換も不可能であった場合に発生します
例:
require 'fiddle'
s = "abc"
p Fiddle::Pointer[s].to_i #=> 136186388
p [s].... -
Fiddle
:: Pointer . to _ ptr(val) -> Fiddle :: Pointer (3160.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
...val と関連した Pointer オブジェクトを生成して返します。
val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。
IO オブジェクトの場合は FILE ポインタを表す Pointer オブジェクト......l.to_ptr を呼び、
Pointer オブジェクトに変換したものを返します。
val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする Pointer オブジェクト......@raise Fiddle::DLError to_ptr の返り値が Pointer オブジェクトでない場合に発生します
@raise TypeError 上記のいずれの変換も不可能であった場合に発生します
例:
require 'fiddle'
s = "abc"
p Fiddle::Pointer[s].to_i #=> 136186388
p [s].... -
Fiddle
:: Pointer . new(addr , size = 0 , free = nil) -> Fiddle :: Pointer (3129.0) -
与えられた addr が指すメモリ領域を表す Pointer オブジェクトを生成して返します。
... Pointer オブジェクトを生成して返します。
size を指定した場合、アドレス addr に確保されているメモリ領域のサイズは
size であると仮定されます。GC は free 関数を使用してメモリを解放します。
@param addr 生成する Pointer オ......ブジェクトが指すアドレスを整数で指定します。
@param size 生成する Pointer オブジェクトが指すメモリ領域のサイズを整数で指定します。
@param free GC 時に呼ばれる free 関数を Fiddle::Function オブジェクトか
整数で指定し... -
Fiddle
:: Pointer # +@ -> Fiddle :: Pointer (3124.0) -
自身の指す値を Pointer にして返します。
...自身の指す値を Pointer にして返します。
自身の指す値はポインタであると仮定します。
C 言語におけるポインタのポインタに対する間接参照 *p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされま......す。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s #=> "abc"... -
Fiddle
:: Pointer # -@ -> Fiddle :: Pointer (3124.0) -
自身を指す Pointer オブジェクトを返します。 C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
...指す Pointer オブジェクトを返します。
C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
c...