るりまサーチ (Ruby 2.4.0)

最速Rubyリファレンスマニュアル検索!
29件ヒット [1-29件を表示] (0.007秒)
トップページ > クラス:Struct[x] > バージョン:2.4.0[x]

ライブラリ

キーワード

検索結果

Struct#==(other) -> bool (2.0)

self と other のクラスが同じであり、各メンバが == メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。

...定します。

Dog = Struct.new(:name, :age)
dog1 = Dog.new("fred", 5)
dog2 = Dog.new("fred", 5)

p dog1 == dog2 #=> true
p dog1.eql?(dog2) #=> true
p dog1.equal?(dog2) #=> false

[注意] 本メソッドの記述は Struct の下位クラスのイ...
...ンスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。

@see Struct#eql?...

Struct#[](member) -> object (2.0)

構造体のメンバの値を返します。

...ンバを指定した場合に発生します。

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]...
...p obj[2] # => in `[]': offset 2 too large for struct(size:2) (IndexError)

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意して...

Struct#[]=(member, value) (2.0)

構造体の member で指定されたメンバの値を value にして value を返します。

...で存在しないメンバを指定した場合に発生します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#dig(key, ...) -> object | nil (2.0)

self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し ます。途中のオブジェクトが nil であった場合は nil を返します。

...nil であった場合は nil を返します。

@param key キーを任意個指定します。

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#each -> Enumerator (2.0)

構造体の各メンバに対して繰り返します。

...体の各メンバに対して繰り返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

絞り込み条件を変える

Struct#each {|value| ... } -> self (2.0)

構造体の各メンバに対して繰り返します。

...体の各メンバに対して繰り返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#each_pair -> Enumerator (2.0)

構造体のメンバ名(Symbol)と値の組を引数にブロックを繰り返し実行します。

...Foo = Struct.new(:foo, :bar)
Foo.new('FOO', 'BAR').each_pair {|m, v| p [m,v]}
# => [:foo, "FOO"]
[:bar, "BAR"]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下...

Struct#each_pair {|member, value| ... } -> self (2.0)

構造体のメンバ名(Symbol)と値の組を引数にブロックを繰り返し実行します。

...Foo = Struct.new(:foo, :bar)
Foo.new('FOO', 'BAR').each_pair {|m, v| p [m,v]}
# => [:foo, "FOO"]
[:bar, "BAR"]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下...

Struct#eql?(other) -> bool (2.0)

self と other のクラスが同じであり、各メンバが eql? メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。

...定します。

Dog = Struct.new(:name, :age)
dog1 = Dog.new("fred", 5)
dog2 = Dog.new("fred", 5)

p dog1 == dog2 #=> true
p dog1.eql?(dog2) #=> true
p dog1.equal?(dog2) #=> false

[注意] 本メソッドの記述は Struct の下位クラスのイ...
...ンスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。

@see Struct#==...

Struct#equal?(other) -> bool (2.0)

指定された other が self 自身である場合のみ真を返します。 これは Object クラスで定義されたデフォルトの動作で す。

...れたデフォルトの動作で
す。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。

@see Struct#eql?, Struct#==...

絞り込み条件を変える

Struct#hash -> Integer (2.0)

self が保持するメンバのハッシュ値を元にして算出した整数を返します。 self が保持するメンバの値が変化すればこのメソッドが返す値も変化します。

...ドが返す値も変化します。

Dog = Struct.new(:name, :age)
dog = Dog.new("fred", 5)
p dog.hash #=> 7917421
dog.name = "john"
p dog.hash #=> -38913223

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対し...
...て呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#inspect -> String (2.0)

self の内容を人間に読みやすい文字列にして返します。

...の内容を人間に読みやすい文字列にして返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#length -> Fixnum (2.0)

構造体のメンバの数を返します。

...構造体のメンバの数を返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#members -> [String] (2.0)

構造体のメンバの名前(文字列)の配列を返します。

...配列を返します。

Foo = Struct.new(:foo, :bar)
p Foo.new.members # => ["foo", "bar"]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点...

Struct#select -> Enumerator (2.0)

構造体のメンバの値に対してブロックを評価した値が真であった要素を全て含 む配列を返します。真になる要素がひとつもなかった場合は空の配列を返しま す。

...Lots = Struct.new(:a, :b, :c, :d, :e, :f)
l = Lots.new(11, 22, 33, 44, 55, 66)
l.select {|v| (v % 2).zero? } #=> [22, 44, 66]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct...

絞り込み条件を変える

Struct#select {|i| ... } -> [object] (2.0)

構造体のメンバの値に対してブロックを評価した値が真であった要素を全て含 む配列を返します。真になる要素がひとつもなかった場合は空の配列を返しま す。

...Lots = Struct.new(:a, :b, :c, :d, :e, :f)
l = Lots.new(11, 22, 33, 44, 55, 66)
l.select {|v| (v % 2).zero? } #=> [22, 44, 66]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct...

Struct#size -> Fixnum (2.0)

構造体のメンバの数を返します。

...構造体のメンバの数を返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#to_a -> [object] (2.0)

構造体のメンバの値を配列にいれて返します。

...す。

require 'etc'
print Etc.getpwuid.values.join(":"), "\n"

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#to_h -> Hash (2.0)

self のメンバ名(Symbol)と値の組を Hash にして返します。

...h にして返します。

Customer = Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_h
# => {:name=>"Joe Smith", :address=>"123 Maple, Anytown NC", :zip=>12345}

[注意] 本メソッドの記述は Struct の下位クラスのインスタンス...
...に対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#to_json(*args) -> String (2.0)

自身を JSON 形式の文字列に変換して返します。

自身を JSON 形式の文字列に変換して返します。

内部的にはハッシュにデータをセットしてから Hash#to_json を呼び出しています。

@param args 引数はそのまま Hash#to_json に渡されます。

@see Hash#to_json

絞り込み条件を変える

Struct#to_s -> String (2.0)

self の内容を人間に読みやすい文字列にして返します。

...の内容を人間に読みやすい文字列にして返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#values -> [object] (2.0)

構造体のメンバの値を配列にいれて返します。

...す。

require 'etc'
print Etc.getpwuid.values.join(":"), "\n"

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。...

Struct#values_at(*members) -> [object] (2.0)

引数で指定されたメンバの値の配列を返します。

...Foo = Struct.new(:foo, :bar, :baz)
obj = Foo.new('FOO', 'BAR', 'BAZ')
p obj.values_at(0, 1, 2) # => ["FOO", "BAR", "BAZ"]

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct...

Struct.[](*args) -> Struct (2.0)

(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。

...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。

@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。

@return 構造体クラスのインス...
...タンス。

@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。

Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]...

Struct.json_create(hash) -> Struct (2.0)

JSON のオブジェクトから Ruby のオブジェクトを生成して返します。

JSON のオブジェクトから Ruby のオブジェクトを生成して返します。

@param hash 適切なキーを持つハッシュを指定します。

絞り込み条件を変える

Struct.members -> [Symbol] (2.0)

(このメソッドは Struct の下位クラスにのみ定義されています) 構造体のメンバの名前(Symbol)の配列を返します。

...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体のメンバの名前(Symbol)の配列を返します。

Foo = Struct.new(:foo, :bar)
p Foo.members # => [:foo, :bar]...

Struct.new(*args) -> Class (2.0)

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

==== ブロックを指定した場合

Struct
.new にブロックを指定した場合は定義した Struct をコンテキストにブ
ロックを評価します。また、定義した Struct はブロック...

Struct.new(*args) -> Struct (2.0)

(このメソッドは 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) {|Class| block } -> Class (2.0)

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

==== ブロックを指定した場合

Struct
.new にブロックを指定した場合は定義した Struct をコンテキストにブ
ロックを評価します。また、定義した Struct はブロック...