locale-categories.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /* Copyright 2006,2008,2014,2018
  2. Free Software Foundation, Inc.
  3. This file is part of Guile.
  4. Guile is free software: you can redistribute it and/or modify it
  5. under the terms of the GNU Lesser General Public License as published
  6. by the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. Guile is distributed in the hope that it will be useful, but WITHOUT
  9. ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  10. FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
  11. License for more details.
  12. You should have received a copy of the GNU Lesser General Public
  13. License along with Guile. If not, see
  14. <https://www.gnu.org/licenses/>. */
  15. /* A list of all available locale categories, not including `ALL'. */
  16. /* The six standard categories, as defined in IEEE Std 1003.1-2001. */
  17. SCM_DEFINE_LOCALE_CATEGORY (COLLATE)
  18. SCM_DEFINE_LOCALE_CATEGORY (CTYPE)
  19. #if defined(LC_MESSAGES) && !(defined(LC_MAX) && LC_MESSAGES > LC_MAX)
  20. /* MinGW doesn't have `LC_MESSAGES'. libintl.h might define
  21. `LC_MESSAGES' for MinGW to an arbitrary large value which we cannot
  22. use in a call to `setlocale'. */
  23. SCM_DEFINE_LOCALE_CATEGORY (MESSAGES)
  24. #endif
  25. SCM_DEFINE_LOCALE_CATEGORY (MONETARY)
  26. SCM_DEFINE_LOCALE_CATEGORY (NUMERIC)
  27. SCM_DEFINE_LOCALE_CATEGORY (TIME)
  28. /* Additional non-standard categories. */
  29. #ifdef LC_PAPER
  30. SCM_DEFINE_LOCALE_CATEGORY (PAPER)
  31. #endif
  32. #ifdef LC_NAME
  33. SCM_DEFINE_LOCALE_CATEGORY (NAME)
  34. #endif
  35. #ifdef LC_ADDRESS
  36. SCM_DEFINE_LOCALE_CATEGORY (ADDRESS)
  37. #endif
  38. #ifdef LC_TELEPHONE
  39. SCM_DEFINE_LOCALE_CATEGORY (TELEPHONE)
  40. #endif
  41. #ifdef LC_MEASUREMENT
  42. SCM_DEFINE_LOCALE_CATEGORY (MEASUREMENT)
  43. #endif
  44. #ifdef LC_IDENTIFICATION
  45. SCM_DEFINE_LOCALE_CATEGORY (IDENTIFICATION)
  46. #endif