#ifndef _CUPS_I18N_H_
# define _CUPS_I18N_H_
# include <stdio.h>
# include "transcode.h"
# ifdef __cplusplus
extern "C" {
# endif
# define _(x) x
typedef struct _cups_message_s
{
char *id,
*str;
} _cups_message_t;
typedef struct _cups_cmap_s
{
struct _cups_cmap_s *next;
int used;
cups_encoding_t encoding;
cups_ucs2_t char2uni[256];
cups_sbcs_t *uni2char[256];
} _cups_cmap_t;
typedef struct _cups_wide2uni_s
{
cups_vbcs_t widechar;
cups_ucs2_t unichar;
} _cups_wide2uni_t;
typedef struct _cups_vmap_s
{
struct _cups_vmap_s *next;
int used;
cups_encoding_t encoding;
cups_ucs2_t *char2uni[256];
int charcount;
_cups_wide2uni_t *wide2uni;
int widecount;
cups_vbcs_t *uni2char[256];
cups_sbcs_t lead2char[256];
cups_sbcs_t lead3char[256];
cups_sbcs_t lead4char[256];
} _cups_vmap_t;
#ifdef __APPLE__
extern const char *_cupsAppleLanguage(const char *locale, char *language,
size_t langsize);
#endif
extern void _cupsCharmapFlush(void);
extern void _cupsCharmapFree(const cups_encoding_t encoding);
extern void *_cupsCharmapGet(const cups_encoding_t encoding);
extern const char *_cupsEncodingName(cups_encoding_t encoding);
extern void _cupsLangPrintError(const char *message);
extern int _cupsLangPrintf(FILE *fp, const char *message, ...)
# ifdef __GNUC__
__attribute__ ((__format__ (__printf__, 2, 3)))
# endif
;
extern int _cupsLangPuts(FILE *fp, const char *message);
extern const char *_cupsLangString(cups_lang_t *lang, const char *message);
extern void _cupsMessageFree(cups_array_t *a);
extern cups_array_t *_cupsMessageLoad(const char *filename, int unquote);
extern const char *_cupsMessageLookup(cups_array_t *a, const char *m);
extern void _cupsSetLocale(char *argv[]);
# ifdef __cplusplus
}
# endif
#endif