diff options
| author | jtc <jtc@NetBSD.org> | 1994-05-25 01:14:14 +0000 |
|---|---|---|
| committer | jtc <jtc@NetBSD.org> | 1994-05-25 01:14:14 +0000 |
| commit | 613d90c7047be08a90a2bf5d2cc4fb8bcea2f8bb (patch) | |
| tree | c59959ee1448d89b8ff836132795815733d261a9 /include | |
| parent | faab9fa25d40719aac1d44fea0f99c72a01a3391 (diff) | |
First of the locale support code is going in...
Diffstat (limited to 'include')
| -rw-r--r-- | include/locale.h | 122 |
1 files changed, 121 insertions, 1 deletions
diff --git a/include/locale.h b/include/locale.h index 84ec9298374..5bb9df4f3f2 100644 --- a/include/locale.h +++ b/include/locale.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * from: @(#)locale.h 5.2 (Berkeley) 2/24/91 - * $Id: locale.h,v 1.3 1993/09/02 20:46:33 jtc Exp $ + * $Id: locale.h,v 1.4 1994/05/25 01:14:14 jtc Exp $ */ #ifndef _LOCALE_H_ @@ -79,4 +79,124 @@ struct lconv *localeconv __P((void)); char *setlocale __P((int, const char *)); __END_DECLS + +#ifdef _LOCALE_PRIVATE + +#include <sys/param.h> +#include <sys/types.h> + +#define _LOCALE_MAGIC 0x12345678 + + +/* On disk structure of LC_MONETARY locale data */ +typedef struct +{ + u_long magic; + u_short len; + + u_short int_curr_symbol_off; + u_short currency_symbol_off; + u_short mon_decimal_point_off; + u_short mon_thousands_sep_off; + u_short mon_grouping_off; + u_short positive_sign_off; + u_short negative_sign_off; + char int_frac_digits; + char frac_digits; + char p_cs_precedes; + char p_sep_by_space; + char n_cs_precedes; + char n_sep_by_space; + char p_sign_posn; + char n_sign_posn; +} _MonetaryLocaleHeader; + +/* In core structure of LC_MONETARY locale data */ +typedef struct +{ + char *int_curr_symbol; + char *currency_symbol; + char *mon_decimal_point; + char *mon_thousands_sep; + char *mon_grouping; + char *positive_sign; + char *negative_sign; + char int_frac_digits; + char frac_digits; + char p_cs_precedes; + char p_sep_by_space; + char n_cs_precedes; + char n_sep_by_space; + char p_sign_posn; + char n_sign_posn; + + char data[0]; +} _MonetaryLocale; + +extern const _MonetaryLocale *_CurrentMonetaryLocale; +extern const _MonetaryLocale _DefaultMonetaryLocale; + + +/* On disk structure of LC_NUMERIC locale data */ +typedef struct +{ + u_long magic; + u_short len; + + u_short decimal_point_off; + u_short thousands_sep_off; + u_short grouping_off; +} _NumericLocaleHeader; + +/* In core structure of LC_NUMERIC locale data */ +typedef struct +{ + const char *decimal_point; + const char *thousands_sep; + const char *grouping; + + char data[0]; +} _NumericLocale; + +extern const _NumericLocale *_CurrentNumericLocale; +extern const _NumericLocale _DefaultNumericLocale; + + +/* On disk structure of LC_TIME locale data */ +typedef struct +{ + u_long magic; /* magic number */ + u_short len; /* len of variable-size data after hdr */ + + u_short abday_off[7]; /* offsets of strings in data block */ + u_short day_off[7]; + u_short abmon_off[12]; + u_short mon_off[12]; + u_short am_pm_off[2]; + u_short d_t_fmt_off; + u_short d_fmt_off; + u_short t_fmt_off; + u_short t_fmt_ampm_off; +} _TimeLocaleHeader; + +/* In core structure of LC_TIME locale data */ +typedef struct { + const char *abday[7]; + const char *day[7]; + const char *abmon[12]; + const char *mon[12]; + const char *am_pm[2]; + const char *d_t_fmt; + const char *d_fmt; + const char *t_fmt; + const char *t_fmt_ampm; + + char data[0]; +} _TimeLocale; + +extern const _TimeLocale *_CurrentTimeLocale; +extern const _TimeLocale _DefaultTimeLocale; + +#endif /* _LOCALE_PRIVATE */ + #endif /* _LOCALE_H_ */ |
