有馬です。

matz / zetabits.com (Yukihiro Matsumoto) wrote

| でも、それでは "25 rubies" とかを救済できないですよ。

atol() だと受け入れるんですよね。
to_i の仕様変更を提案してきた背景に、ほとんど同じメソッドが並立することに
抵抗があるのに気づいたので再考しました。

意図が異なるなら、メソッドが増えても大丈夫かなあということで、
atol() のように 0 を返す to_i に対して、strtol() のようにエラーをチェックする
メソッドを用意するという方向で提案します。

String#to_l() : Integer() が例外を返す局面で nil を返す
String#to_d() : Float()   が例外を返す局面で nil を返す

先だっての to_i? to_f? よりはいい名前だと思います。いかがでしょうか。

--
 有馬 康弘 <fit0298 / fitec.co.jp>