種類
- 特異メソッド (16)
- インスタンスメソッド (14)
ライブラリ
- ビルトイン (19)
-
json
/ add / core (2) -
syck
/ rubytypes (6) -
yaml
/ rubytypes (3)
キーワード
- [] (6)
- []= (3)
- members (4)
- new (6)
- taguri (3)
-
to
_ json (2) -
yaml
_ tag _ class _ name (3) -
yaml
_ tag _ read _ class (3)
検索結果
先頭5件
-
Struct
. members -> [String] (118) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体のメンバの名前(String)の配列を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体のメンバの名前(String)の配列を返します。
Foo = Struct.new(:foo, :bar)
p Foo.members # => ["foo", "bar"]... -
Struct
# members -> [String] (102) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体のメンバの名前(文字列)の配列を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体のメンバの名前(文字列)の配列を返します。
Foo = Struct.new(:foo, :bar)
p Foo.new.members # => ["foo", "bar"]... -
Struct
# taguri -> String (102) -
自身のタグ URI を返します。
自身のタグ URI を返します。 -
Struct
# to _ json(*args) -> String (102) -
自身を JSON 形式の文字列に変換して返します。
自身を JSON 形式の文字列に変換して返します。
内部的にはハッシュにデータをセットしてから Hash#to_json を呼び出しています。
@param args 引数はそのまま Hash#to_json に渡されます。
@see Hash#to_json -
Struct
. yaml _ tag _ class _ name -> String (102) -
自身のクラス名から Struct:: をのぞいた文字列を返します。
...自身のクラス名から Struct:: をのぞいた文字列を返します。
@return 自身のクラス名から Struct::をのぞいた文字列
require 'yaml'
YStruct = Struct.new("YStruct", :name)
p YStruct::yaml_tag_class_name
#=> "YStruct"... -
Struct
. yaml _ tag _ read _ class(name) -> String (102) -
引数 name に Struct:: を加えた文字列を返します。
...ame に Struct:: を加えた文字列を返します。
@param name 構造体の名前を指定します。
@return 引数 name に Struct:: を加えた文字列。
require 'yaml'
YStruct = Struct.new("YStruct", :name)
p YStruct::yaml_tag_read_class("YStruct")
#=> "Struct::YStruct"... -
Struct
. new(*args) -> Class (31) -
Struct クラスに新しいサブクラスを作って、それを返します。
...
Struct クラスに新しいサブクラスを作って、それを返します。
サブクラスでは構造体のメンバに対するアクセスメソッドが定義されています。
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%......した。
メンバ名に String を指定できるのは後方互換性のためだと考えた方が良いでしょう。
したがって、メンバ名は Symbol で指定するのが無難です。
@param args 構造体を定義するための可変長引数。String または Symbol を指定......します。
==== 第一引数が String の場合
args[0] が String の場合、クラス名になるので、大文字で始まる必要
があります。つまり、以下のような指定はエラーになります。
p Struct.new('foo', 'bar')
# => -:1:in `new': identifier foo need... -
Struct
# [](member) -> object (13) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体のメンバの値を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体のメンバの値を返します。
@param member Fixnum でメンバのインデックスを指定します。
Symbol, String でメンバの名前を指定します。
@raise IndexError mem......or member が String, Symbol で存在しないメンバを指定した場合に発生します。
Foo = Struct.new(:foo, :bar)
obj = Foo.new('FOO', 'BAR')
p obj[:foo] # => "FOO"
p obj['bar'] # => "BAR"
# p obj[:baz] # => in `[]': no member 'baz' in struct (NameError)......p obj[0] # => "FOO"
p obj[1] # => "BAR"
p obj[-1] # => "BAR" # Array のように負のインデックスも指定できます。
p obj[2] # => in `[]': offset 2 too large for struct(size:2) (IndexError)... -
Struct
# []=(member , value) (13) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体の member で指定されたメンバの値を value にして value を返します。
...のメソッドは Struct の下位クラスにのみ定義されています)
構造体の member で指定されたメンバの値を value にして value を返します。
@param member Fixnum でメンバのインデックスを指定します。
Symbol, String でメンバの......定します。
@param value メンバに設定する値を指定します。
@raise IndexError member が整数で存在しないメンバを指定した場合に発生します。
@raise NameError member が String, Symbol で存在しないメンバを指定した場合に発生します。... -
Struct
. [](*args) -> Struct (6) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]... -
Struct
. new(*args) -> Struct (6) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]...
