/* ---------------------------------------------------------------------------- * any_to_utf8.c * ---------------------------------------------------------------------------- * Mastering programmed by YAMASHINA Hio * * Copyright 2008 YAMASHINA Hio * ---------------------------------------------------------------------------- * $Id$ * ------------------------------------------------------------------------- */ #include "unijp.h" #include "unijp_build.h" #include /* ---------------------------------------------------------------------------- : _uj_any_to_utf8(conv, icode). +--------------------------------------------------------------------------- */ uj_conv_t* _uj_any_to_utf8(const uj_conv_t* in, uj_conv_t* out, uj_charcode_t icode) { if( icode==ujc_auto ) { icode = uj_getcode(in->buf, in->buf_len); } switch( icode ) { case ujc_auto: abort(); case ujc_utf8: return _uj_validate_utf8(in, out); case ujc_sjis: return _uj_sjis_to_utf8(in, out); case ujc_eucjp: return _uj_eucjp_to_utf8(in, out); case ujc_jis: return _uj_jis_to_utf8(in, out); case ujc_ucs2: return _uj_ucs2_to_utf8(in, out); case ujc_ucs4: return _uj_ucs4_to_utf8(in, out); case ujc_utf16: return _uj_utf16_to_utf8(in, out); case ujc_ascii: return _uj_validate_utf8(in, out); case ujc_binary: abort(); case ujc_undefined: abort(); } abort(); return NULL; } /* ---------------------------------------------------------------------------- * End of File. * ------------------------------------------------------------------------- */