# File mconv.rb, line 189 def Mconv.minimize_charset(charset, string) # shortcut if /\A(?:euc-jp|utf-8|iso-8859-1)\z/i =~ charset if /\A[\x00-\x7f]*\z/ =~ string return 'us-ascii' else return charset end end charset2 = 'us-ascii' begin # round trip? s2 = Iconv.conv(charset, charset2, Iconv.conv(charset2, charset, string)) return charset2 if string == s2 rescue Iconv::Failure end charset end