別のキーワード
検索結果
先頭5件
-
Struct
# [](member) -> object (18101) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体のメンバの値を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体のメンバの値を返します。
@param member Fixnum でメンバのインデックスを指定します。
Symbol, String でメンバの名前を指定します。
@raise IndexError mem......ンバを指定した場合に発生します。
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
. [](*args) -> Struct (18101) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]... -
Struct
# []=(member , value) (6101) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体の member で指定されたメンバの値を value にして value を返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体の member で指定されたメンバの値を value にして value を返します。
@param member Fixnum でメンバのインデックスを指定します。
Symbol, String でメンバ... -
Struct
. new(*args) -> Class (3001) -
Struct クラスに新しいサブクラスを作って、それを返します。
...
Struct クラスに新しいサブクラスを作って、それを返します。
サブクラスでは構造体のメンバに対するアクセスメソッドが定義されています。
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%......指定はエラーになります。
p Struct.new('foo', 'bar')
# => -:1:in `new': identifier foo needs to be constant (NameError)
また args[1..-1] は、Symbol か String で指定します。
p Struct.new("Foo", :foo, :bar) # => Struct::Foo
==== 第一引数が Symbol の場合......前の無い
クラスになります。名前の無いクラスは最初に名前を求める際に代入され
ている定数名を検索し、見つかった定数名をクラス名とします。
Foo = Struct.new(:foo, :bar)
p Foo # => Foo
@see Class.new... -
Struct
. new(*args) -> Struct (3001) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]...
