From: "NARUSE, Yui" Date: 2011-06-14T15:42:07+09:00 Subject: [ruby-dev:43801] Re: Iconv#trivial? の仕様 成瀬です。 2011年6月14日12:02 Takahiro Kambe : > こんにちは。 > > In message <4DF6AAB2.2040405@netlab.jp> > on Tue, 14 Jun 2011 09:26:26 +0900, > Sho Hashimoto wrote: >> Iconv#trivial? の仕様について質問させてください。 >> (どちらかというと、iconv の話かもしれませんが...) >> >> Iconv#trivial? の rdoc は以下のようにありますが、これがどういう意味なの >> か理解できていません。 > ...snip... >> なお、上記を追ってる際にたまたま見つけたのですが iconv 1.13.1 の >> iconvctl は ICONV_TRIVIALP の分岐だけフラグの値を返さずに何かしらの判定 > iconv 1.13.1とありますように、このようなフラッグはGNU iconv独自のもの > で、標準的なiconvには存在しません(と、思います)。 フラグ以前に、iconvctl(3) 自体が GNU libiconv 特有の関数ですね。 http://www.gnu.org/software/libiconv/ なお、GNU な iconv は GNU libiconv 以外に The iconv Implementation in the GNU C library ってのもありまして (いわゆる glibc iconv) こっちには iconvctl(3) はありません。 Linux は普通 glibc iconv を使っていると思うので意外とある環境は少ないと思います。 http://www.gnu.org/s/hello/manual/libc/glibc-iconv-Implementation.html > 実際、GNU iconvを使用しないで作成したRubyでは、Iconv#trivial?は > NotImplementedErrorとなる場合があります(というか、おそらくほとんどそう > なるでしょう)。 > > 従って、回答は「GNU iconvにあり」です。:-) http://www.gnu.org/software/libiconv/documentation/libiconv/iconvctl.3.html を見ると、the conversion が trivial なら、とありますね。 trivial とはなんぞやの説明はないので、それはソース読まないとだめかも。 -- NARUSE, Yui