class FrozenError

[edit]

要約

Object#freezeされたオブジェクトを変更しようとした時に発生します。



[1, 2, 3].freeze << 4 # FrozenError: can't modify frozen Array

目次

特異メソッド
インスタンスメソッド

継承しているメソッド

Exceptionから継承しているメソッド

特異メソッド

new(error_message = "") -> FrozenError[permalink][rdoc][edit]
new(error_message = "", receiver:) -> FrozenError

例外オブジェクトを生成して返します。

[PARAM] error_message:
エラーメッセージを表す文字列です
[PARAM] receiver:
原因となったメソッド呼び出しのレシーバです

err = FrozenError.new("message")
p err       # => #<FrozenError: message>

インスタンスメソッド

receiver -> object[permalink][rdoc][edit]

self が発生した時のレシーバオブジェクトを返します。

[EXCEPTION] ArgumentError:
レシーバが設定されていない時に発生します。

begin
  [1, 2, 3].freeze << 4
rescue FrozenError => err
  p err.receiver  # => [1, 2, 3]
end