/* Copyright 07/20/98 Sun Microsystems, Inc. All Rights Reserved */ #if !defined(__STD_CLOCALE) && !defined(__STD_LOCALE_H) #define __STD_CLOCALE #include #define LC_CTYPE 0 /* locale's ctype handline */ #define LC_NUMERIC 1 /* locale's decimal handling */ #define LC_TIME 2 /* locale's time handling */ #define LC_COLLATE 3 /* locale's collation data */ #define LC_MONETARY 4 /* locale's monetary handling */ #define LC_MESSAGES 5 /* locale's messages handling */ #define LC_ALL 6 /* name of locale's category name */ #define _LastCategory LC_MESSAGES /* This must be last category */ #define _ValidCategory(c) \ (((int)(c) >= LC_CTYPE) && ((int)(c) <= _LastCategory) || \ ((int)c == LC_ALL)) #ifndef NULL #if defined(_LP64) && !defined(__cplusplus) #define NULL 0L #else #define NULL 0 #endif #endif namespace std { // C++ Standard functions and types struct lconv { char *decimal_point; /* decimal point character */ char *thousands_sep; /* thousands separator */ char *grouping; /* digit grouping */ char *int_curr_symbol; /* international currency symbol */ char *currency_symbol; /* national currency symbol */ char *mon_decimal_point; /* currency decimal point */ char *mon_thousands_sep; /* currency thousands separator */ char *mon_grouping; /* currency digits grouping */ char *positive_sign; /* currency plus sign */ char *negative_sign; /* currency minus sign */ char int_frac_digits; /* internat currency fractional digits */ char frac_digits; /* currency fractional digits */ char p_cs_precedes; /* currency plus location */ char p_sep_by_space; /* currency plus space ind. */ char n_cs_precedes; /* currency minus location */ char n_sep_by_space; /* currency minus space ind. */ char p_sign_posn; /* currency plus position */ char n_sign_posn; /* currency minus position */ }; extern "C" char *setlocale(int, const char *); extern "C" struct lconv *localeconv(void); } /* namespace std */ #endif /* __STD_locale */