Project

General

Profile

Actions

Feature #6639

closed

ArgumentError から ArityError を分離

Added by metanest (Makoto Kishimoto) almost 12 years ago. Updated almost 12 years ago.

Status:
Rejected
Assignee:
-
Target version:
-
[ruby-dev:45795]

Description

=begin
ArgumentError と TypeError の違いがわかりにくい、という話がありました( #6423 )。
違いがわかりにくい原因として、メソッドやブロックの呼び出し時に、次のような感じで、
エラーの発生する場所が混在しているため、という理由が考えられます。
(1) 実引数の個数が正しいかをチェック → ダメなら ArgumentError
(2) 実引数の型(期待するメソッドがあるか)をチェック → ダメなら TypeError
(3) 実引数の値をチェック → ダメなら ArgumentError
ArgumentError のサブクラスとして ArityError を作り (1) のエラーを ArityError に
すれば、各エラーの意味が明確化するのではないかと思います。
=end


Files

No6639.pdf (15.1 KB) No6639.pdf slide-show metanest (Makoto Kishimoto), 06/27/2012 07:13 AM
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0