Back to index

php5  5.3.10
mbfl_language.h
Go to the documentation of this file.
00001 /*
00002  * "streamable kanji code filter and converter"
00003  * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved.
00004  *
00005  * LICENSE NOTICES
00006  *
00007  * This file is part of "streamable kanji code filter and converter",
00008  * which is distributed under the terms of GNU Lesser General Public 
00009  * License (version 2) as published by the Free Software Foundation.
00010  *
00011  * This software is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  * GNU Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with "streamable kanji code filter and converter";
00018  * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
00019  * Suite 330, Boston, MA  02111-1307  USA
00020  *
00021  * The author of this file:
00022  *
00023  */
00024 /*
00025  * The source code included in this files was separated from mbfilter.h
00026  * by Moriyoshi Koizumi <moriyoshi@php.net> on 20 Dec 2002. The file
00027  * mbfilter.h is included in this package .
00028  *
00029  */
00030 
00031 #ifndef MBFL_LANGUAGE_H
00032 #define MBFL_LANGUAGE_H
00033 
00034 #include "mbfl_defs.h"
00035 #include "mbfl_encoding.h"
00036 
00037 enum mbfl_no_language {
00038        mbfl_no_language_invalid = -1,
00039        mbfl_no_language_neutral,
00040        mbfl_no_language_uni,
00041        mbfl_no_language_min,
00042        mbfl_no_language_catalan,          /* ca */
00043        mbfl_no_language_danish,           /* da */
00044        mbfl_no_language_german,           /* de */
00045        mbfl_no_language_english,          /* en */
00046        mbfl_no_language_estonian,         /* et */
00047        mbfl_no_language_greek,                   /* el */
00048        mbfl_no_language_spanish,          /* es */
00049        mbfl_no_language_french,           /* fr */
00050        mbfl_no_language_italian,          /* it */
00051        mbfl_no_language_japanese,         /* ja */
00052        mbfl_no_language_korean,           /* ko */
00053        mbfl_no_language_dutch,                   /* nl */
00054        mbfl_no_language_polish,           /* pl */
00055        mbfl_no_language_portuguese,               /* pt */
00056        mbfl_no_language_swedish,          /* sv */
00057        mbfl_no_language_simplified_chinese,             /* zh-cn */
00058        mbfl_no_language_traditional_chinese,            /* zh-tw */
00059        mbfl_no_language_russian,          /* ru */
00060        mbfl_no_language_ukrainian,        /* ua */
00061        mbfl_no_language_armenian,         /* hy */
00062        mbfl_no_language_turkish,          /* tr */
00063        mbfl_no_language_max
00064 };
00065 
00066 typedef enum mbfl_no_language mbfl_language_id;
00067 
00068 /*
00069  * language
00070  */
00071 typedef struct _mbfl_language {
00072        enum mbfl_no_language no_language;
00073        const char *name;
00074        const char *short_name;
00075        const char *(*aliases)[];
00076        enum mbfl_no_encoding mail_charset;
00077        enum mbfl_no_encoding mail_header_encoding;
00078        enum mbfl_no_encoding mail_body_encoding;
00079 } mbfl_language;
00080 
00081 MBFLAPI extern const mbfl_language * mbfl_name2language(const char *name);
00082 MBFLAPI extern const mbfl_language * mbfl_no2language(enum mbfl_no_language no_language);
00083 MBFLAPI extern enum mbfl_no_language mbfl_name2no_language(const char *name);
00084 MBFLAPI extern const char * mbfl_no_language2name(enum mbfl_no_language no_language);
00085 
00086 
00087 #endif /* MBFL_LANGUAGE_H */