annotate libcxx/include/uchar.h @ 236:c4bab56944e8 llvm-original

LLVM 16
author kono
date Wed, 09 Nov 2022 17:45:10 +0900
parents
children 1f2b6ac9f198
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
236
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
1 // -*- C++ -*-
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
2 //===----------------------------------------------------------------------===//
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
3 //
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
5 // See https://llvm.org/LICENSE.txt for license information.
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
7 //
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
8 //===----------------------------------------------------------------------===//
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
9
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
10 #ifndef _LIBCPP_UCHAR_H
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
11 #define _LIBCPP_UCHAR_H
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
12
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
13 /*
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
14 uchar.h synopsis // since C++11
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
15
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
16 Macros:
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
17
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
18 __STDC_UTF_16__
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
19 __STDC_UTF_32__
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
20
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
21 Types:
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
22
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
23 mbstate_t
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
24 size_t
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
25
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
26 size_t mbrtoc8(char8_t* pc8, const char* s, size_t n, mbstate_t* ps); // since C++20
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
27 size_t c8rtomb(char* s, char8_t c8, mbstate_t* ps); // since C++20
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
28 size_t mbrtoc16(char16_t* pc16, const char* s, size_t n, mbstate_t* ps);
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
29 size_t c16rtomb(char* s, char16_t c16, mbstate_t* ps);
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
30 size_t mbrtoc32(char32_t* pc32, const char* s, size_t n, mbstate_t* ps);
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
31 size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
32
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
33 */
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
34
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
35 #include <__config>
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
36
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
37 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
38 # pragma GCC system_header
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
39 #endif
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
40
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
41 #if !defined(_LIBCPP_CXX03_LANG)
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
42
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
43 // Some platforms don't implement <uchar.h> and we don't want to give a hard
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
44 // error on those platforms. When the platform doesn't provide <uchar.h>, at
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
45 // least include <stddef.h> so we get the declaration for size_t.
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
46 #if __has_include_next(<uchar.h>)
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
47 # include_next <uchar.h>
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
48 #else
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
49 # include <stddef.h>
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
50 #endif
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
51
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
52 #endif // _LIBCPP_CXX03_LANG
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
53
c4bab56944e8 LLVM 16
kono
parents:
diff changeset
54 #endif // _LIBCPP_UCHAR_H