2011年2月 1日

[ruby-list:47808] Re: [].join.encoding # => #

遠藤です。

2011年2月1日8:59 Yukihiro Matsumoto <matz@xxxxx>:
> |> String#gsub! などの推論から、(少なくとも String の) 破壊的な
> |> メソッドは、変更が起きなかった時に nil を返しそうです。
>
> メソッド名の末尾に!がつくメソッドは変更が起きなかったときに
> nilを返すというルールになっています※。force_encodingは破壊的

> ではありますが、!はつかないので対象外ですね。

そうなんですね。ありがとうございます。


> ※ Array#reverse! は変更がなくても nil を返しませんが、これ
> は逆順にはしたが、結果として同じであったと解釈します。

ふーむ。どうもさじ加減が難しい。


> |> force_encoding の結果をそのまま変数に代入するのは本当に推奨
> |> されるスタイルなんでしょうか。
> |
> |selfかnilを返すforce_encoding!を追加するとか?
>
> 本当に必要であれば。

! つきも ! なしも破壊的なのはもっと混乱しそうです。

--
Yusuke Endoh <mame@xxxxx>


投稿者 xml-rpc : 2011年2月 1日 09:26
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/101685
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。