< :前の番号
^ :番号順リスト
> :次の番号
P :前の記事
N :次の記事(自分と同じ返事先を持つ)
|<:スレッドの先頭
>|:次のスレッド
^ :返事先
_:自分への返事
>:同じ返事先を持つ記事(前)
<:同じ返事先を持つ記事(後)
---:分割してスレッド表示、再表示
| :分割して(縦)スレッド表示、再表示
~ :スレッドのフレーム消去
.:インデックス
..:インデックスのインデックス
卜部でございます。
Yukihiro Matsumoto wrote:
>ふむ。nil以外ではエラーにしているわけですから、nilだけto_str
>を見るというのはあまり一貫性が無いと思います。いっそ、全部を
>to_strにする、というのもひとつの選択ですが、使い易さという点
>からは全部エラーにした方がよさそうに思います
>
># 変えるかな。
>
>
それはそれで納得できる仕様です。ENV.[]=は
(1) 引数が文字列でなければもれなくエラーになる
(2) 引数にもれなくto_strを試す
のどちらかの挙動になるべき、と正式に提案したいです。Duck Typepっぽいので
(2)が好みです。
>|個人的には NilClass#to_str を定義することがままあります。
>
>それってどういう使い方なんですか。グローバルな変更は影響が大
>きすぎて扱い難くないですか?
>
>
あるケース(実際にあった)では、nilとStringがごちゃまぜになった配列を返し
てくる某ライブラリを使ってるときに、nilとStringをポリモルフィックに使い
たいと思って定義しました。NilClass#to_strが空文字列を返してくれるだけ
で、かなり楽になれたと持っています。
このケースは明らかに一般的でない(仕様上のバグを回避しようとした汚いハッ
クともいえる)し、万人に勧められるものでもないと思いますが。