1/*********************************************************************** 2* * 3* This software is part of the ast package * 4* Copyright (c) 1985-2010 AT&T Intellectual Property * 5* and is licensed under the * 6* Common Public License, Version 1.0 * 7* by AT&T Intellectual Property * 8* * 9* A copy of the License is available at * 10* http://www.opensource.org/licenses/cpl1.0.txt * 11* (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * 12* * 13* Information and Software Systems Research * 14* AT&T Research * 15* Florham Park NJ * 16* * 17* Glenn Fowler <gsf@research.att.com> * 18* David Korn <dgk@research.att.com> * 19* Phong Vo <kpv@research.att.com> * 20* * 21***********************************************************************/ 22#pragma prototyped 23 24/* 25 * locale state private definitions 26 */ 27 28#ifndef _LCLIB_H 29#define _LCLIB_H 1 30 31#define locales _ast_locales 32#define translate _ast_translate 33 34#define lc_categories _ast_lc_categories 35#define lc_charsets _ast_lc_charsets 36#define lc_languages _ast_lc_languages 37#define lc_maps _ast_lc_maps 38#define lc_territories _ast_lc_territories 39 40struct Lc_info_s; 41 42#define _LC_PRIVATE_ \ 43 struct Lc_info_s info[AST_LC_COUNT]; \ 44 struct Lc_s* next; 45 46#define _LC_TERRITORY_PRIVATE_ \ 47 unsigned char indices[LC_territory_language_max]; 48 49#include <ast.h> 50#include <error.h> 51#include <lc.h> 52 53typedef struct Lc_numeric_s 54{ 55 int decimal; 56 int thousand; 57} Lc_numeric_t; 58 59#define LCINFO(c) (&locales[c]->info[c]) 60 61extern const Lc_charset_t lc_charsets[]; 62extern const Lc_language_t lc_languages[]; 63extern const Lc_map_t lc_maps[]; 64extern const Lc_territory_t lc_territories[]; 65 66extern Lc_category_t lc_categories[]; 67extern Lc_t* locales[]; 68 69extern char* translate(const char*, const char*, const char*, const char*); 70 71#endif 72