locale_mgmt_win32.h 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. // -*- C++ -*-
  2. //===----------------- support/win32/locale_mgmt_win32.h ------------------===//
  3. //
  4. // The LLVM Compiler Infrastructure
  5. //
  6. // This file is dual licensed under the MIT and the University of Illinois Open
  7. // Source Licenses. See LICENSE.TXT for details.
  8. //
  9. //===----------------------------------------------------------------------===//
  10. #ifndef _LIBCPP_SUPPORT_WIN32_LOCALE_MGMT_WIN32_H
  11. #define _LIBCPP_SUPPORT_WIN32_LOCALE_MGMT_WIN32_H
  12. #include <xlocinfo.h> // _locale_t
  13. #define locale_t _locale_t
  14. #define LC_COLLATE_MASK _M_COLLATE
  15. #define LC_CTYPE_MASK _M_CTYPE
  16. #define LC_MONETARY_MASK _M_MONETARY
  17. #define LC_NUMERIC_MASK _M_NUMERIC
  18. #define LC_TIME_MASK _M_TIME
  19. #define LC_MESSAGES_MASK _M_MESSAGES
  20. #define LC_ALL_MASK ( LC_COLLATE_MASK \
  21. | LC_CTYPE_MASK \
  22. | LC_MESSAGES_MASK \
  23. | LC_MONETARY_MASK \
  24. | LC_NUMERIC_MASK \
  25. | LC_TIME_MASK )
  26. #define freelocale _free_locale
  27. // FIXME: base currently unused. Needs manual work to construct the new locale
  28. locale_t newlocale( int mask, const char * locale, locale_t base );
  29. locale_t uselocale( locale_t newloc );
  30. #endif // _LIBCPP_SUPPORT_WIN32_LOCALE_MGMT_WIN32_H