mirror of
https://github.com/arduino/Arduino.git
synced 2025-03-04 01:29:18 +01:00
122 lines
2.6 KiB
C
122 lines
2.6 KiB
C
|
/*
|
||
|
locale.h
|
||
|
Values appropriate for the formatting of monetary and other
|
||
|
numberic quantities.
|
||
|
*/
|
||
|
|
||
|
#ifndef _LOCALE_H_
|
||
|
#define _LOCALE_H_
|
||
|
|
||
|
#include "_ansi.h"
|
||
|
|
||
|
/* Indicate that we honor AEABI portability if requested. */
|
||
|
#if defined _AEABI_PORTABILITY_LEVEL && _AEABI_PORTABILITY_LEVEL != 0 && !defined _AEABI_PORTABLE
|
||
|
# define _AEABI_PORTABLE
|
||
|
#endif
|
||
|
|
||
|
#ifndef NULL
|
||
|
#define NULL 0
|
||
|
#endif
|
||
|
|
||
|
_BEGIN_STD_C
|
||
|
|
||
|
#ifdef _AEABI_PORTABLE
|
||
|
|
||
|
extern _CONST int __aeabi_LC_COLLATE;
|
||
|
extern _CONST int __aeabi_LC_CTYPE;
|
||
|
extern _CONST int __aeabi_LC_MONETARY;
|
||
|
extern _CONST int __aeabi_LC_NUMERIC;
|
||
|
extern _CONST int __aeabi_LC_TIME;
|
||
|
extern _CONST int __aeabi_LC_ALL;
|
||
|
|
||
|
#define LC_COLLATE (__aeabi_LC_COLLATE)
|
||
|
#define LC_CTYPE (__aeabi_LC_CTYPE)
|
||
|
#define LC_MONETARY (__aeabi_LC_MONETARY)
|
||
|
#define LC_NUMERIC (__aeabi_LC_NUMERIC)
|
||
|
#define LC_TIME (__aeabi_LC_TIME)
|
||
|
#define LC_ALL (__aeabi_LC_ALL)
|
||
|
|
||
|
struct __aeabi_lconv {
|
||
|
char *decimal_point;
|
||
|
char *thousands_sep;
|
||
|
char *grouping;
|
||
|
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;
|
||
|
|
||
|
/* The following fields are added by C99. */
|
||
|
char int_p_cs_precedes;
|
||
|
char int_n_cs_precedes;
|
||
|
char int_p_sep_by_space;
|
||
|
char int_n_sep_by_space;
|
||
|
char int_p_sign_posn;
|
||
|
char int_n_sign_posn;
|
||
|
};
|
||
|
#else
|
||
|
|
||
|
#define LC_ALL 0
|
||
|
#define LC_COLLATE 1
|
||
|
#define LC_CTYPE 2
|
||
|
#define LC_MONETARY 3
|
||
|
#define LC_NUMERIC 4
|
||
|
#define LC_TIME 5
|
||
|
#define LC_MESSAGES 6
|
||
|
|
||
|
struct lconv
|
||
|
{
|
||
|
char *decimal_point;
|
||
|
char *thousands_sep;
|
||
|
char *grouping;
|
||
|
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 int_n_cs_precedes;
|
||
|
char int_n_sep_by_space;
|
||
|
char int_n_sign_posn;
|
||
|
char int_p_cs_precedes;
|
||
|
char int_p_sep_by_space;
|
||
|
char int_p_sign_posn;
|
||
|
};
|
||
|
#endif /* _AEABI_PORTABLE */
|
||
|
|
||
|
#ifndef _REENT_ONLY
|
||
|
char *_EXFUN(setlocale,(int category, const char *locale));
|
||
|
# ifdef _AEABI_PORTABLE
|
||
|
struct __aeabi_lconv *_EXFUN(__aeabi_localeconv,(void));
|
||
|
# else
|
||
|
struct lconv *_EXFUN(localeconv,(void));
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
struct _reent;
|
||
|
char *_EXFUN(_setlocale_r,(struct _reent *, int category, const char *locale));
|
||
|
struct lconv *_EXFUN(_localeconv_r,(struct _reent *));
|
||
|
|
||
|
_END_STD_C
|
||
|
|
||
|
#endif /* _LOCALE_H_ */
|