You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
165 lines
4.5 KiB
C++
165 lines
4.5 KiB
C++
// -*- C++ -*-
|
|
//===--------------- support/xlocale/__posix_l_fallback.h -----------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
// These are reimplementations of some extended locale functions ( *_l ) that
|
|
// are normally part of POSIX. This shared implementation provides parts of the
|
|
// extended locale support for libc's that normally don't have any (like
|
|
// Android's bionic and Newlib).
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef _LIBCPP_SUPPORT_XLOCALE_POSIX_L_FALLBACK_H
|
|
#define _LIBCPP_SUPPORT_XLOCALE_POSIX_L_FALLBACK_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isalnum_l(int c, locale_t) {
|
|
return ::isalnum(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isalpha_l(int c, locale_t) {
|
|
return ::isalpha(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isblank_l(int c, locale_t) {
|
|
return ::isblank(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iscntrl_l(int c, locale_t) {
|
|
return ::iscntrl(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isdigit_l(int c, locale_t) {
|
|
return ::isdigit(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isgraph_l(int c, locale_t) {
|
|
return ::isgraph(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int islower_l(int c, locale_t) {
|
|
return ::islower(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isprint_l(int c, locale_t) {
|
|
return ::isprint(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int ispunct_l(int c, locale_t) {
|
|
return ::ispunct(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isspace_l(int c, locale_t) {
|
|
return ::isspace(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isupper_l(int c, locale_t) {
|
|
return ::isupper(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int isxdigit_l(int c, locale_t) {
|
|
return ::isxdigit(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswalnum_l(wint_t c, locale_t) {
|
|
return ::iswalnum(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswalpha_l(wint_t c, locale_t) {
|
|
return ::iswalpha(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswblank_l(wint_t c, locale_t) {
|
|
return ::iswblank(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswcntrl_l(wint_t c, locale_t) {
|
|
return ::iswcntrl(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswdigit_l(wint_t c, locale_t) {
|
|
return ::iswdigit(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswgraph_l(wint_t c, locale_t) {
|
|
return ::iswgraph(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswlower_l(wint_t c, locale_t) {
|
|
return ::iswlower(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswprint_l(wint_t c, locale_t) {
|
|
return ::iswprint(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswpunct_l(wint_t c, locale_t) {
|
|
return ::iswpunct(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswspace_l(wint_t c, locale_t) {
|
|
return ::iswspace(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswupper_l(wint_t c, locale_t) {
|
|
return ::iswupper(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int iswxdigit_l(wint_t c, locale_t) {
|
|
return ::iswxdigit(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int toupper_l(int c, locale_t) {
|
|
return ::toupper(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int tolower_l(int c, locale_t) {
|
|
return ::tolower(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY wint_t towupper_l(wint_t c, locale_t) {
|
|
return ::towupper(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY wint_t towlower_l(wint_t c, locale_t) {
|
|
return ::towlower(c);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int strcoll_l(const char *s1, const char *s2,
|
|
locale_t) {
|
|
return ::strcoll(s1, s2);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY size_t strxfrm_l(char *dest, const char *src,
|
|
size_t n, locale_t) {
|
|
return ::strxfrm(dest, src, n);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY size_t strftime_l(char *s, size_t max,
|
|
const char *format,
|
|
const struct tm *tm, locale_t) {
|
|
return ::strftime(s, max, format, tm);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY int wcscoll_l(const wchar_t *ws1,
|
|
const wchar_t *ws2, locale_t) {
|
|
return ::wcscoll(ws1, ws2);
|
|
}
|
|
|
|
inline _LIBCPP_INLINE_VISIBILITY size_t wcsxfrm_l(wchar_t *dest, const wchar_t *src,
|
|
size_t n, locale_t) {
|
|
return ::wcsxfrm(dest, src, n);
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // _LIBCPP_SUPPORT_XLOCALE_POSIX_L_FALLBACK_H
|