種類
ライブラリ
- ビルトイン (294)
- csv (30)
- date (4)
- etc (21)
-
fiddle
/ import (144) - json (12)
- mkmf (24)
- objspace (12)
- openssl (12)
- ostruct (34)
-
rexml
/ document (12) -
rexml
/ sax2listener (12) - socket (72)
クラス
- Addrinfo (36)
- Array (31)
- CSV (24)
-
CSV
:: Row (6) - Data (6)
- Date (2)
- DateTime (2)
-
Fiddle
:: CStruct (60) - Hash (10)
- MatchData (4)
- OpenStruct (34)
-
REXML
:: Instruction (12) - Range (12)
-
RubyVM
:: InstructionSequence (90) -
Socket
:: Option (24) - String (12)
- Struct (124)
- Time (2)
モジュール
- Etc (12)
-
Fiddle
:: Importer (72) - Kernel (24)
- ObjectSpace (12)
-
OpenSSL
:: ASN1 (12) -
REXML
:: SAX2Listener (12)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - Addrinfo (12)
- CStruct (12)
- CircularDatastructure (12)
-
DATA
_ PTR (12) - Data (3)
-
Data
_ Get _ Struct (12) -
Data
_ Make _ Struct (12) -
Data
_ Wrap _ Struct (12) - Marshal フォーマット (12)
-
NEWS for Ruby 2
. 2 . 0 (11) -
NEWS for Ruby 2
. 5 . 0 (8) -
NEWS for Ruby 2
. 6 . 0 (7) -
NEWS for Ruby 3
. 0 . 0 (5) -
NEWS for Ruby 3
. 1 . 0 (4) - Passwd (9)
- RDATA (12)
- RMODULE (12)
-
RUBY
_ DATA _ FUNC (12) - Ruby用語集 (12)
-
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (12) - [] (12)
- bigdecimal (12)
-
blk
_ copy _ prev (12) -
blk
_ free (12) -
blk
_ mark (12) -
blk
_ orphan (12) -
bm
_ mark (12) - convert (24)
-
count
_ tdata _ objects (12) -
create
_ value (12) - data (12)
- deconstruct (14)
-
deconstruct
_ keys (20) -
delete
_ field (12) - dig (40)
- disasm (24)
- disassemble (24)
-
dyna
_ pop (12) -
dyna
_ push (12) -
fc
_ i (12) -
fc
_ path (12) - fiddle (12)
-
fiddle
/ import (12) -
fiddle
/ types (12) - filter (14)
-
frame
_ dup (12) -
gvar
_ i (12) -
have
_ struct _ member (24) -
ivar
_ i (12) -
json
/ add / ostruct (12) -
json
/ add / struct (12) -
keyword
_ init? (4) -
load
_ from _ binary (10) -
load
_ from _ binary _ extra _ data (10) - malloc (12)
-
mark
_ global _ entry (12) - modifiable (12)
- new (72)
-
new
_ blktag (12) -
new
_ dvar (12) -
node
_ type (12) - of (12)
- pack (21)
- pack テンプレート文字列 (12)
-
processing
_ instruction (12) -
rb
_ exec _ arg _ addopt (1) -
rb
_ exec _ arg _ fixup (1) -
rb
_ gc _ mark _ frame (12) -
rb
_ global _ entry (12) -
rb
_ gvar _ defined (12) -
rb
_ reserved _ word (12) -
rb
_ thread _ select (1) -
rb
_ thread _ wait _ for (12) -
rb
_ timespec _ now (10) -
remove
_ trace (12) -
rexml
/ document (12) -
ruby 1
. 6 feature (12) -
ruby 1
. 9 feature (12) -
scope
_ dup (12) - select (24)
- size (12)
- sizeof (12)
- socket (12)
-
to
_ a (6) -
to
_ binary (10) -
to
_ i (12) -
to
_ ptr (12) -
to
_ s (24) -
to
_ sockaddr (12) -
trace
_ ev (12) - traverse (12)
- typealias (12)
-
undef
_ setter (12) - union (12)
- unpack (12)
-
val
_ setter (12) - value (12)
- values (6)
- yaml (12)
検索結果
先頭5件
-
static struct RVarmap * dyna
_ push(void) (26200.0) -
ブロックローカル変数テーブルをプッシュします。
ブロックローカル変数テーブルをプッシュします。 -
static void dyna
_ pop(struct RVarmap *vars) (26200.0) -
ブロックローカル変数テーブルをポップします。
ブロックローカル変数テーブルをポップします。 -
Struct
# deconstruct -> [object] (21230.0) -
構造体のメンバの値を配列にいれて返します。
...= Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_a
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.......new は Struct の下位クラスを作成する点に
注意してください。
@see d:spec/pattern_matching#matching_non_primitive_objects... -
Struct
# deconstruct _ keys(array _ of _ names) -> Hash (21230.0) -
self のメンバの名前と値の組を Hash で返します。
...ustomer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
h = joe.deconstruct_keys([:zip, :address])
h # => {:zip=>12345, :address=>"123 Maple, Anytown NC"}
# 引数が nil の場合は全てのメンバを返します。
h = joe.deconstruct_keys(ni......r.", :address=>"123 Maple, Anytown NC", :zip=>12345}
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。
@see d:spec/p... -
Fiddle
:: Importer # struct(signature) -> Class (21119.0) -
C の構造体型に対応する Ruby のクラスを構築して返します。
...れを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_usec;
};
という構造体型に対応して
Timeval = struct(["long tv_sec", "long tv_usec"])
として構造体に対応するクラスを生成しま......Fiddle::CStruct を継承しています。詳しくは
そちらを参照してください。
@param signature 構造体の各要素を文字列で表現したものの配列
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.tv_usec... -
Struct
. keyword _ init? -> bool | nil (15134.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体が作成されたときに keyword_init: true を指定されていたら true を返します。 false を指定されていたら false を返します。 それ以外の場合は nil を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体が作成されたときに keyword_init: true を指定されていたら true を返します。
false を指定されていたら false を返します。
それ以外の場合は nil を返します。......//emlist[例][ruby]{
Foo = Struct.new(:a)
Foo.keyword_init? # => nil
Bar = Struct.new(:a, keyword_init: true)
Bar.keyword_init? # => true
Baz = Struct.new(:a, keyword_init: false)
Baz.keyword_init? # => false
//}... -
Struct
# dig(key , . . . ) -> object | nil (15106.0) -
self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し ます。途中のオブジェクトが nil であった場合は nil を返します。
...クトを dig メソッドで再帰的に参照して返し
ます。途中のオブジェクトが nil であった場合は nil を返します。
@param key キーを任意個指定します。
//emlist[例][ruby]{
klass = Struct.new(:a)
o = klass.new(klass.new({b: [1, 2, 3]}))
o.dig(:a, :a, :......b, 0) # => 1
o.dig(:b, 0) # => nil
//}
@see Array#dig, Hash#dig, OpenStruct#dig... -
Struct
# to _ a -> [object] (15030.0) -
構造体のメンバの値を配列にいれて返します。
...= Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_a
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.......new は Struct の下位クラスを作成する点に
注意してください。
@see d:spec/pattern_matching#matching_non_primitive_objects... -
Struct
# values -> [object] (15030.0) -
構造体のメンバの値を配列にいれて返します。
...= Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_a
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.......new は Struct の下位クラスを作成する点に
注意してください。
@see d:spec/pattern_matching#matching_non_primitive_objects... -
VALUE Data
_ Make _ Struct(VALUE klass , type , RUBY _ DATA _ FUNC mark , RUBY _ DATA _ FUNC free , type *svar) (12424.0) -
type 型の構造体をヒープに割り当ててそれへのポインタを svar に代入し、クラス klass のインスタンスである Ruby のオブジェクトを生成し、それを返します。mark free はそれぞれマーク用・解放用の関数へのポインタです。 どちらも、必要ないときはかわりに 0 を渡します。
...UBY_DATA_FUNC の定義は以下のようです。
typedef void (*RUBY_DATA_FUNC)(void *st)
第一引数 st には svar の値が渡されます。
使用例
struct mytype {
int i;
char *s;
};
VALUE
my_s_new(klass)
VALUE klass;
{
struct my......type *dummy;
return Data_Make_Struct(MyClass, struct mytype,
mark_my, free_my, dummy);
}... -
VALUE Data
_ Wrap _ Struct(VALUE klass , RUBY _ DATA _ FUNC mark , RUBY _ DATA _ FUNC free , void *sval) (12424.0) -
C の構造体 sval をラップして klass クラスの インスタンスである Ruby オブジェクトを生成し、それを返します。 mark、free はそれぞれ sval のマーク用・解放用の 関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。
...RUBY_DATA_FUNC の定義は以下のようです。
typedef void (*RUBY_DATA_FUNC)(void *st)
第一引数 st には sval が渡されます。
使用例
struct mytype {
int i;
char *s;
};
VALUE
my_s_new(klass)
VALUE klass;
{
struct mytype......*m = malloc(sizeof(struct mytype));
m->i = 0;
m->s = 0;
return Data_Wrap_Struct(MyClass, 0, free_my, m);
}... -
MatchData
# deconstruct _ keys(array _ of _ names) -> Hash (12242.0) -
引数で指定された名前の名前付きキャプチャを Hash で返します。
...す。
//emlist[例][ruby]{
m = /(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})/.match("18:37:22")
m.deconstruct_keys([:hours, :minutes]) # => {:hours => "18", :minutes => "37"}
m.deconstruct_keys(nil) # => {:hours => "18", :minutes => "37", :seconds => "22"}
# 名前付きキャプチャが......定義されていなかった場合は空のハッシュを返す
m = /(\d{2}):(\d{2}):(\d{2})/.match("18:37:22")
m.deconstruct_keys(nil) # => {}
//}
@see d:spec/pattern_matching#matching_non_primitive_objects...