From: "NARUSE, Yui" Date: 2008-02-24T14:06:33+09:00 Subject: [ruby-dev:33922] Re: UTF_16LE.dummy? returns false 成瀬です。 U.Nakamura wrote: > | > Encoding.compatible?(Encoding::US_ASCII, Encoding::US_ASCII) > | => # > | > | Encoding.compatible? が encoding オブジェクトも引数に取るべきという主張 > | はありかもしれません。 > > encodingオブジェクトは特例として通して欲しい気はしますね。 > 現状だと、encodingオブジェクトが別のencodingオブジェクトと > compatibleかどうかを知るためにはいちいち文字列作らないといけ > ないということですよね。 encoding から引く場合ですと、うかつにやると空文字の例外にひっかかって > Encoding.compatible?("".force_encoding("iso-2022-jp"), > "".force_encoding("UTF-16BE")) > => # なんてことになるので、Encoding.compatible? が欲しいかもしれません。 もっとも、結局やってくれることはと言えば、 if enc1 == enc2 then enc1 elsif enc1 == US-ASCII && enc2.ascii_compat? then enc2 elsif enc2 == US-ASCII && enc1.ascii_compat? then enc1 else nil end くらいではあるのですが。 -- NARUSE, Yui DBDB A476 FDBD 9450 02CD 0EFC BCE3 C388 472E C1EA