1 /* 2 * "streamable kanji code filter and converter" 3 * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. 4 * 5 * LICENSE NOTICES 6 * 7 * This file is part of "streamable kanji code filter and converter", 8 * which is distributed under the terms of GNU Lesser General Public 9 * License (version 2) as published by the Free Software Foundation. 10 * 11 * This software is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 * GNU Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with "streamable kanji code filter and converter"; 18 * if not, write to the Free Software Foundation, Inc., 59 Temple Place, 19 * Suite 330, Boston, MA 02111-1307 USA 20 * 21 * The author of this file: 22 * 23 */ 24 /* 25 * The source code included in this files was separated from mbfilter_ja.c 26 * by rui hirokawa <hirokawa@php.net> on 16 aug 2011. 27 * 28 */ 29 30 #ifdef HAVE_CONFIG_H 31 #include "config.h" 32 #endif 33 34 #include "mbfilter.h" 35 #include "mbfilter_euc_jp_2004.h" 36 #include "mbfilter_sjis_2004.h" 37 38 #include "unicode_table_jis2004.h" 39 40 extern int mbfl_filt_ident_eucjp(int c, mbfl_identify_filter *filter); 41 extern const unsigned char mblen_table_eucjp[]; 42 43 static const char *mbfl_encoding_eucjp2004_aliases[] = {"EUC_JP-2004", NULL}; 44 45 const mbfl_encoding mbfl_encoding_eucjp2004 = { 46 mbfl_no_encoding_eucjp2004, 47 "EUC-JP-2004", 48 "EUC-JP", 49 (const char *(*)[])&mbfl_encoding_eucjp2004_aliases, 50 mblen_table_eucjp, 51 MBFL_ENCTYPE_MBCS 52 }; 53 54 const struct mbfl_identify_vtbl vtbl_identify_eucjp2004 = { 55 mbfl_no_encoding_eucjp2004, 56 mbfl_filt_ident_common_ctor, 57 mbfl_filt_ident_common_dtor, 58 mbfl_filt_ident_eucjp 59 }; 60 61 const struct mbfl_convert_vtbl vtbl_eucjp2004_wchar = { 62 mbfl_no_encoding_eucjp2004, 63 mbfl_no_encoding_wchar, 64 mbfl_filt_conv_common_ctor, 65 mbfl_filt_conv_common_dtor, 66 mbfl_filt_conv_jis2004_wchar, 67 mbfl_filt_conv_common_flush 68 }; 69 70 const struct mbfl_convert_vtbl vtbl_wchar_eucjp2004 = { 71 mbfl_no_encoding_wchar, 72 mbfl_no_encoding_eucjp2004, 73 mbfl_filt_conv_common_ctor, 74 mbfl_filt_conv_common_dtor, 75 mbfl_filt_conv_wchar_jis2004, 76 mbfl_filt_conv_jis2004_flush 77 }; 78