HashSet<const char*>* setList() { static HashSet<const char*> set; if (set.isEmpty()) { TextEncoding::m_st_iIsEmpty = 0; addEncodingName(set, "x-mac-japanese"); addEncodingName(set, "cp932"); addEncodingName(set, "JIS_X0201"); addEncodingName(set, "JIS_X0208-1983"); addEncodingName(set, "JIS_X0208-1990"); addEncodingName(set, "JIS_X0212-1990"); addEncodingName(set, "JIS_C6226-1978"); addEncodingName(set, "Shift_JIS_X0213-2000"); addEncodingName(set, "ISO-2022-JP"); addEncodingName(set, "ISO-2022-JP-2"); addEncodingName(set, "ISO-2022-JP-1"); addEncodingName(set, "ISO-2022-JP-3"); addEncodingName(set, "EUC-JP"); addEncodingName(set, "Shift_JIS"); } return &set; }
bool TextEncoding::isJapanese() const { if (noExtendedTextEncodingNameUsed()) return false; static HashSet<const char*> set; if (set.isEmpty()) { addEncodingName(set, "x-mac-japanese"); addEncodingName(set, "cp932"); addEncodingName(set, "JIS_X0201"); addEncodingName(set, "JIS_X0208-1983"); addEncodingName(set, "JIS_X0208-1990"); addEncodingName(set, "JIS_X0212-1990"); addEncodingName(set, "JIS_C6226-1978"); addEncodingName(set, "Shift_JIS_X0213-2000"); addEncodingName(set, "ISO-2022-JP"); addEncodingName(set, "ISO-2022-JP-2"); addEncodingName(set, "ISO-2022-JP-1"); addEncodingName(set, "ISO-2022-JP-3"); addEncodingName(set, "EUC-JP"); addEncodingName(set, "Shift_JIS"); } return m_name && set.contains(m_name); }