要約
パターンマッチのハッシュパターンで、対応するキーが見つからない場合に発生します。
キーは存在するものの値がパターンに一致しない場合は、親クラスの NoMatchingPatternError が発生します。
パターンマッチについては パターンマッチ を参照してください。
data = {name: "ken"}
begin
data => {age: Integer}
rescue NoMatchingPatternKeyError => e
p e.key # => :age
p e.matchee == data # => true
end
目次
継承しているメソッド
- Exceptionから継承している特異メソッド
- Exceptionから継承しているメソッド
特異メソッド
new(message = nil, matchee: nil, key: nil) -> NoMatchingPatternKeyErrorRuby 3.1 から[permalink][rdoc][edit]-
例外オブジェクトを生成して返します。
- [PARAM]
message: - エラーメッセージを表す文字列です。
- [PARAM]
matchee: - パターンマッチの対象となったオブジェクトです。 NoMatchingPatternKeyError#matchee で取り出せます。
- [PARAM]
key: - 見つからなかったキーです。 NoMatchingPatternKeyError#key で取り出せます。
data = {name: "ken"} e = NoMatchingPatternKeyError.new("key not found", matchee: data, key: :age) p e.matchee.equal?(data) # => true p e.key # => :age - [PARAM]
インスタンスメソッド
key -> objectRuby 3.1 から[permalink][rdoc][edit]-
見つからなかったキーを返します。
生成時に key が設定されていない場合は ArgumentError が発生します。
matchee -> objectRuby 3.1 から[permalink][rdoc][edit]-
パターンマッチの対象となったオブジェクトを返します。
生成時に matchee が設定されていない場合は ArgumentError が発生します。