種類
- インスタンスメソッド (191)
- 特異メソッド (107)
- クラス (1)
クラス
- BasicObject (22)
- Data (2)
- Hash (144)
- KeyError (38)
- Method (11)
-
ObjectSpace
:: WeakMap (11) - Struct (26)
- Thread (22)
オブジェクト
- ENV (22)
キーワード
- Symbol (1)
- [] (33)
- []= (22)
-
deconstruct
_ keys (2) - default (22)
-
default
_ proc (11) - dig (9)
-
instance
_ eval (22) -
keyword
_ init? (3) - merge (22)
- parameters (11)
- receiver (7)
- shift (11)
- store (11)
-
thread
_ variable _ get (11) -
thread
_ variable _ set (11) -
to
_ h (12) -
values
_ at (11)
検索結果
先頭5件
-
KeyError
. new(error _ message = "" , key:) -> KeyError (29332.0) -
例外オブジェクトを生成して返します。
...となったメソッド呼び出しのレシーバ
@param key 原因となったメソッド呼び出しのキー
//emlist[例][ruby]{
h = {foo: 1}
err = KeyError.new("Message", receiver: h, key: :bar)
p err.message # => "Message"
p err.receiver # => {:foo=>1}
p err.key # => :bar
//}... -
KeyError
. new(error _ message = "" , receiver: , key:) -> KeyError (29332.0) -
例外オブジェクトを生成して返します。
...となったメソッド呼び出しのレシーバ
@param key 原因となったメソッド呼び出しのキー
//emlist[例][ruby]{
h = {foo: 1}
err = KeyError.new("Message", receiver: h, key: :bar)
p err.message # => "Message"
p err.receiver # => {:foo=>1}
p err.key # => :bar
//}... -
KeyError
. new(error _ message = "") -> KeyError (29232.0) -
例外オブジェクトを生成して返します。
...となったメソッド呼び出しのレシーバ
@param key 原因となったメソッド呼び出しのキー
//emlist[例][ruby]{
h = {foo: 1}
err = KeyError.new("Message", receiver: h, key: :bar)
p err.message # => "Message"
p err.receiver # => {:foo=>1}
p err.key # => :bar
//}... -
KeyError
. new(error _ message = "" , receiver:) -> KeyError (29232.0) -
例外オブジェクトを生成して返します。
...となったメソッド呼び出しのレシーバ
@param key 原因となったメソッド呼び出しのキー
//emlist[例][ruby]{
h = {foo: 1}
err = KeyError.new("Message", receiver: h, key: :bar)
p err.message # => "Message"
p err.receiver # => {:foo=>1}
p err.key # => :bar
//}... -
KeyError
# key -> object (29121.0) -
KeyError の原因となったメソッド呼び出しのキーを返します。
...
KeyError の原因となったメソッド呼び出しのキーを返します。
@raise ArgumentError キーが設定されていない時に発生します。
例:
h = Hash.new
begin
h.fetch('gumby'*20)
rescue KeyError => e
p e.message # => "key not found: \"gumbygumby......gumbygumbygumbygumbygumbygumbygumbygumbygumbygumbyg..."
p 'gumby'*20 == e.key # => true
end... -
Hash
. new {|hash , key| . . . } -> Hash (26251.0) -
空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま す。設定したデフォルト値はHash#default_procで参照できます。
...ト値は全部同一のオブジェクトなので、
# 破壊的変更によって他のキーに対応する値も変更されます。
h = Hash.new("foo")
p h[1] #=> "foo"
p h[1].object_id #=> 6127170
p h[1] << "bar" #=> "foobar"
p h[1] #=> "foob......無いキーが呼び出される度に
# ブロックを評価するので、全て別のオブジェクトになります。
h = Hash.new {|hash, key| hash[key] = "foo"}
p h[1] #=> "foo"
p h[1].object_id #=> 6126900
p h[1] << "bar" #=> "foobar"
p h[1]......=>"foo"}
# 値が設定されていないときに(fetchのように)例外をあげるようにもできる
h = Hash.new {|hash, key|
raise(IndexError, "hash[#{key}] has no value")
}
h[1]
# エラー hash[1] has no value (IndexError)
//}
@see Hash#default=,Hash#defaul... -
Hash
. new(ifnone = nil) -> Hash (26136.0) -
空の新しいハッシュを生成します。ifnone はキーに対 応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。
...省略した Hash.new は {} と同じです。
デフォルト値として、毎回同一のオブジェクトifnoneを返します。
それにより、一箇所のデフォルト値の変更が他の値のデフォルト値にも影響します。
//emlist[][ruby]{
h = Hash.new([])
h[0] << 0
h[......[ruby]{
h = Hash.new([])
p h[1] #=> []
p h[1].object_id #=> 6127150
p h[1] << "bar" #=> ["bar"]
p h[1] #=> ["bar"]
p h[2] #=> ["bar"]
p h[2].object_id #=> 6127150
p h #=> {}
h = Hash.new([].freeze)
h[0]... -
Struct
. new(*args , keyword _ init: nil) -> Class (23417.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......定するのが無難です。
@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init 構造体クラスのインスタンスを生成する際に、キーワード引数を使用するかどうかを指定します。値の......Point1 = Struct.new(:x, :y)
Point1.new(1, 2) # => #<struct Point1 x=1, y=2>
Point1.new(x: 1, y: 2) # => #<struct Point1 x=1, y=2>
Point1.new(x: 1) # => #<struct Point1 x=1, y=nil>
Point1.new(y: 2) # => #<struct Point1 x=nil, y=2>
Point1.new(x: 1, y: 2, z: 3... -
Struct
. new(*args , keyword _ init: nil) {|subclass| block } -> Class (23417.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......定するのが無難です。
@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init 構造体クラスのインスタンスを生成する際に、キーワード引数を使用するかどうかを指定します。値の......Point1 = Struct.new(:x, :y)
Point1.new(1, 2) # => #<struct Point1 x=1, y=2>
Point1.new(x: 1, y: 2) # => #<struct Point1 x=1, y=2>
Point1.new(x: 1) # => #<struct Point1 x=1, y=nil>
Point1.new(y: 2) # => #<struct Point1 x=nil, y=2>
Point1.new(x: 1, y: 2, z: 3... -
Struct
. new(*args , keyword _ init: nil) -> Class (23333.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......定するのが無難です。
@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
Ruby 3.1 では互換......oint = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}... -
Struct
. new(*args , keyword _ init: nil) {|subclass| block } -> Class (23333.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......定するのが無難です。
@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
Ruby 3.1 では互換......oint = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}... -
Struct
. new(*args , keyword _ init: false) -> Class (23297.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......す。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # =......> #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が String の場合、クラス名になるので、大文字で始まる必要
があります。つま... -
Struct
. new(*args , keyword _ init: false) {|subclass| block } -> Class (23297.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...では構造体のメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合......す。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # =......> #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が String の場合、クラス名になるので、大文字で始まる必要
があります。つま... -
Struct
. keyword _ init? -> bool | nil (14120.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体が作成されたときに keyword_init: true を指定されていたら true を返します。 false を指定されていたら false を返します。 それ以外の場合は nil を返します。
... 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.keywor......d_init? # => true
Baz = Struct.new(:a, keyword_init: false)
Baz.keyword_init? # => false
//}... -
Data
# deconstruct _ keys(array _ of _ names _ or _ nil) -> hash (14114.0) -
self のメンバの名前と値の組を Hash で返します。
...返します。
//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)
distance = Measure.new(10, 'km')
distance.deconstruct_keys(nil) # => {:amount=>10, :unit=>"km"}
distance.deconstruct_keys([:amount]) # => {:amount=>10}
//}
このメソッドは以下のようにパターンマッチ......で利用されます。
//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)
distance = Measure.new(10, 'km')
case distance
in amount:, unit: 'km' # 裏側で #deconstruct_keys を呼ぶ
puts "It is #{amount} kilometers away"
else
puts "Don't know how to handle it"
end
# "It is 10 kilom... -
KeyError
# receiver -> object (11014.0) -
KeyError の原因となったメソッド呼び出しのレシーバを返します。
...
KeyError の原因となったメソッド呼び出しのレシーバを返します。
@raise ArgumentError レシーバが設定されていない時に発生します。
例:
h = Hash.new
begin
h.fetch('gumby'*20)
rescue KeyError => e
p e.message # => "key not found:... -
ENV
. []=(key , value) (8196.0) -
key に対応する環境変数の値を value にします。 value が nil の時、key に対応する環境変数を取り除きます。
...
key に対応する環境変数の値を value にします。
value が nil の時、key に対応する環境変数を取り除きます。
@param key 環境変数名を指定します。文字列で指定します。文字列以外のオ
ブジェクトを指定した場合は to......トを指定した場合は to_str メソッドによる暗黙
の型変換を試みます。
@return value を返します。
//emlist[][ruby]{
ENV['NEW_KEY'] = 'some_value'
ENV['NEW_KEY'] # => 'some_value'
ENV.store('NEW_KEY', nil) # => nil
ENV.has_key?('NEW_KEY') # => false
//}... -
ENV
. store(key , value) -> String (8196.0) -
key に対応する環境変数の値を value にします。 value が nil の時、key に対応する環境変数を取り除きます。
...
key に対応する環境変数の値を value にします。
value が nil の時、key に対応する環境変数を取り除きます。
@param key 環境変数名を指定します。文字列で指定します。文字列以外のオ
ブジェクトを指定した場合は to......トを指定した場合は to_str メソッドによる暗黙
の型変換を試みます。
@return value を返します。
//emlist[][ruby]{
ENV['NEW_KEY'] = 'some_value'
ENV['NEW_KEY'] # => 'some_value'
ENV.store('NEW_KEY', nil) # => nil
ENV.has_key?('NEW_KEY') # => false
//}...