llvm-project

Форк
0
75 строк · 2.0 Кб
1
// -*- C++ -*-
2
//===----------------------------------------------------------------------===//
3
//
4
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5
// See https://llvm.org/LICENSE.txt for license information.
6
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7
//
8
//===----------------------------------------------------------------------===//
9

10
#ifndef _LIBCPP_CUCHAR
11
#define _LIBCPP_CUCHAR
12

13
/*
14
    cuchar synopsis // since C++11
15

16
Macros:
17

18
    __STDC_UTF_16__
19
    __STDC_UTF_32__
20

21
namespace std {
22

23
Types:
24

25
  mbstate_t
26
  size_t
27

28
size_t mbrtoc8(char8_t* pc8, const char* s, size_t n, mbstate_t* ps);   // since C++20
29
size_t c8rtomb(char* s, char8_t c8, mbstate_t* ps);                     // since C++20
30
size_t mbrtoc16(char16_t* pc16, const char* s, size_t n, mbstate_t* ps);
31
size_t c16rtomb(char* s, char16_t c16, mbstate_t* ps);
32
size_t mbrtoc32(char32_t* pc32, const char* s, size_t n, mbstate_t* ps);
33
size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
34

35
} // std
36

37
*/
38

39
#include <__config>
40

41
#include <uchar.h>
42

43
#ifndef _LIBCPP_UCHAR_H
44
#   error <cuchar> tried including <uchar.h> but didn't find libc++'s <uchar.h> header. \
45
          This usually means that your header search paths are not configured properly. \
46
          The header search paths should contain the C++ Standard Library headers before \
47
          any C Standard Library, and you are probably using compiler flags that make that \
48
          not be the case.
49
#endif
50

51
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
52
#  pragma GCC system_header
53
#endif
54

55
_LIBCPP_BEGIN_NAMESPACE_STD
56

57
#if !defined(_LIBCPP_CXX03_LANG)
58

59
using ::mbstate_t _LIBCPP_USING_IF_EXISTS;
60
using ::size_t _LIBCPP_USING_IF_EXISTS;
61

62
#  if !defined(_LIBCPP_HAS_NO_C8RTOMB_MBRTOC8)
63
using ::mbrtoc8 _LIBCPP_USING_IF_EXISTS;
64
using ::c8rtomb _LIBCPP_USING_IF_EXISTS;
65
#  endif
66
using ::mbrtoc16 _LIBCPP_USING_IF_EXISTS;
67
using ::c16rtomb _LIBCPP_USING_IF_EXISTS;
68
using ::mbrtoc32 _LIBCPP_USING_IF_EXISTS;
69
using ::c32rtomb _LIBCPP_USING_IF_EXISTS;
70

71
#endif // _LIBCPP_CXX03_LANG
72

73
_LIBCPP_END_NAMESPACE_STD
74

75
#endif // _LIBCPP_CUCHAR
76

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.