別のキーワード
種類
- 特異メソッド (26)
- インスタンスメソッド (19)
- クラス (14)
- 文書 (12)
ライブラリ
- ビルトイン (59)
クラス
- FrozenError (17)
- Hash (14)
- Module (7)
- Object (7)
キーワード
- Hash (7)
-
NEWS for Ruby 2
. 5 . 0 (7) -
NEWS for Ruby 2
. 7 . 0 (5) - freeze (14)
- new (26)
- receiver (5)
検索結果
先頭5件
-
FrozenError (38006.0)
-
Object#freezeされたオブジェクトを変更しようとした時に発生します。
...Object#freezeされたオブジェクトを変更しようとした時に発生します。
//emlist[例][ruby]{
[1, 2, 3].freeze << 4 # FrozenError: can't modify frozen Array
//}... -
FrozenError
. new(error _ message = "") -> FrozenError (21114.0) -
例外オブジェクトを生成して返します。
...オブジェクトを生成して返します。
@param error_message エラーメッセージを表す文字列です
@param receiver 原因となったメソッド呼び出しのレシーバです
//emlist[][ruby]{
err = FrozenError.new("message")
p err # => #<FrozenError: message>
//}... -
FrozenError
. new(error _ message = "" , receiver:) -> FrozenError (21114.0) -
例外オブジェクトを生成して返します。
...オブジェクトを生成して返します。
@param error_message エラーメッセージを表す文字列です
@param receiver 原因となったメソッド呼び出しのレシーバです
//emlist[][ruby]{
err = FrozenError.new("message")
p err # => #<FrozenError: message>
//}... -
FrozenError
. new(error _ message = "") -> FrozenError (21113.0) -
例外オブジェクトを生成して返します。
...例外オブジェクトを生成して返します。
@param error_message エラーメッセージを表す文字列です
//emlist[][ruby]{
err = FrozenError.new("message")
p err # => #<FrozenError: message>
//}... -
FrozenError
# receiver -> object (21006.0) -
self が発生した時のレシーバオブジェクトを返します。
...self が発生した時のレシーバオブジェクトを返します。
@raise ArgumentError レシーバが設定されていない時に発生します。
//emlist[][ruby]{
begin
[1, 2, 3].freeze << 4
rescue FrozenError => err
p err.receiver # => [1, 2, 3]
end
//}... -
NEWS for Ruby 2
. 7 . 0 (24.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
..."."
//}
* FrozenError
* 新規メソッド
* 変更しようとしたfreezeされたオブジェクトを返すFrozenError#receiverメソッドが
追加されました。FrozenErrorをRubyのコードで発生する時に設定できるように
FrozenError.newメソ... -
Object
# freeze -> self (18.0) -
オブジェクトを凍結(内容の変更を禁止)します。
...オブジェクトを凍結(内容の変更を禁止)します。
凍結されたオブジェクトの変更は
例外 FrozenError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり......します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (FrozenError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクト......ことはできます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen? #=> true
a[0] = "foo"
p a # can't modify frozen Array (FrozenError)
b = a.dup
p b #=> [1]
p b.frozen? #=> false
b[0] = "foo"
p b #=> ["foo"]
//}
@see Object#frozen?,Object#dup,Kerne... -
Module
# freeze -> self (12.0) -
モジュールを凍結(内容の変更を禁止)します。
...。
凍結したモジュールにメソッドの追加など何らかの変更を加えようとした場合に
FrozenError
が発生します。
@see Object#freeze
//emlist[例][ruby]{
module Foo; end
Foo.freeze
module Foo
def foo; end
end # => FrozenError: can't modify frozen module
//}... -
Hash (6.0)
-
ハッシュテーブル(連想配列とも呼ぶ)のクラスです。ハッシュは任意の種類のオブ ジェクト(キー)から任意の種類のオブジェクト(値)への関連づけを行うことができます。
...bject#freeze) してキーとして
使用します。この為、キーとして使われている文字列を更新しようとすると例外
FrozenError
が発生するので rehash を呼ぶ必要性は生じません。
ハッシュにはデフォルト値を設定することができます... -
Hash
. new(ifnone = nil) -> Hash (6.0) -
空の新しいハッシュを生成します。ifnone はキーに対 応する値が存在しない時のデフォルト値です。設定したデフォルト値はHash#defaultで参照できます。
...#=> ["bar"]
p h[1] #=> ["bar"]
p h[2] #=> ["bar"]
p h[2].object_id #=> 6127150
p h #=> {}
h = Hash.new([].freeze)
h[0] += [0] #破壊的でないメソッドはOK
h[1] << 1
# エラー: can't modify frozen Array (FrozenError)
//}... -
NEWS for Ruby 2
. 5 . 0 (6.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...定できるようになりました
13919
* KeyError
* KeyError#receiver を追加 12063
* KeyError#key を追加 12063
* FrozenError
* 新しい例外クラスです 13224
=== 標準添付ライブラリの更新
* bigdecimal
* BigDecimal 1.3.4 に更新
* BigDe... -
Hash
. new {|hash , key| . . . } -> Hash (1.0) -
空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま す。設定したデフォルト値はHash#default_procで参照できます。
空の新しいハッシュを生成します。ブロックの評価結果がデフォルト値になりま
す。設定したデフォルト値はHash#default_procで参照できます。
値が設定されていないハッシュ要素を参照するとその都度ブロックを
実行し、その結果を返します。
ブロックにはそのハッシュとハッシュを参照したときのキーが渡されます。
@raise ArgumentError ブロックと通常引数を同時に与えると発生します。
//emlist[例][ruby]{
# ブロックではないデフォルト値は全部同一のオブジェクトなので、
# 破壊的変更によって他のキーに対応する値も変更されます。
h = Hash.new...