source: mainline/uspace/lib/cpp/include/cwchar@ a1c35cc

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since a1c35cc was de53138, checked in by Dzejrou <dzejrou@…>, 7 years ago

cpp: revamped c header wrappers, now only include standard symbols, others are in std::hel, fixed some bugs

  • Property mode set to 100644
File size: 5.4 KB
Line 
1/*
2 * Copyright (c) 2018 Jaroslav Jindrak
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * - Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * - Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * - The name of the author may not be used to endorse or promote products
15 * derived from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29#ifndef LIBCPP_WCHAR
30#define LIBCPP_WCHAR
31
32#include "internal/common.hpp"
33
34namespace std::hel
35{
36 extern "C" {
37 #include <wchar.h>
38 #include <time.h>
39 }
40}
41
42namespace std
43{
44 /* using std::hel::mbstate_t; */
45 using std::hel::size_t;
46 using std::hel::wint_t;
47 using std::hel::tm;
48
49 /* using std::hel::wcscpy; */
50 /* using std::hel::wcsncpy; */
51 /* using std::hel::wcscat; */
52 /* using std::hel::wcsncat; */
53 /* using std::hel::wcsnxfrm; */
54
55 /* using std::hel::wcslen; */
56 /* using std::hel::wcscmp; */
57 /* using std::hel::wcsncmp; */
58 /* using std::hel::wcscoll; */
59 /* using std::hel::wcschr; */
60 /* using std::hel::wcsrchr; */
61 /* using std::hel::wcsspn; */
62 /* using std::hel::wcscspn; */
63 /* using std::hel::wcspbrk; */
64 /* using std::hel::wcsstr; */
65 /* using std::hel::wcstok; */
66
67 /* using std::hel::wmemcpy; */
68 /* using std::hel::wmemmove; */
69 /* using std::hel::wmemcmp; */
70 /* using std::hel::wmemchr; */
71 /* using std::hel::wmemset; */
72
73 /* using std::hel::msbinit; */
74 /* using std::hel::btowc; */
75 /* using std::hel::wctob; */
76 /* using std::hel::mbrlen; */
77 /* using std::hel::mbrtowc; */
78 /* using std::hel::wctomb; */
79 /* using std::hel::mbsrtowcs; */
80 /* using std::hel::wcsrtombs; */
81
82 /* using std::hel::fgetwc; */
83 /* using std::hel::getwc; */
84 /* using std::hel::fgetws; */
85 /* using std::hel::fputwc; */
86 /* using std::hel::putwc; */
87 /* using std::hel::fputws; */
88 /* using std::hel::getwchar; */
89 /* using std::hel::putwchar; */
90 /* using std::hel::ungetwc; */
91 /* using std::hel::fwide; */
92 /* using std::hel::wscanf; */
93 /* using std::hel::fwscanf; */
94 /* using std::hel::swscanf; */
95 /* using std::hel::vwscanf; */
96 /* using std::hel::vfwscanf; */
97 /* using std::hel::vswscanf; */
98 /* using std::hel::wprintf; */
99 /* using std::hel::fwprintf; */
100 /* using std::hel::swprintf; */
101
102 /* using std::hel::wcsftime; */
103 /* using std::hel::wcstol; */
104 /* using std::hel::wcstoll; */
105 /* using std::hel::wcstoul; */
106 /* using std::hel::wcstoull; */
107 /* using std::hel::wcstof; */
108 /* using std::hel::wcstod; */
109 /* using std::hel::wcstold; */
110}
111
112/* using std::hel::mbstate_t; */
113using std::hel::size_t;
114using std::hel::wint_t;
115using std::hel::tm;
116
117/* using std::hel::wcscpy; */
118/* using std::hel::wcsncpy; */
119/* using std::hel::wcscat; */
120/* using std::hel::wcsncat; */
121/* using std::hel::wcsnxfrm; */
122
123/* using std::hel::wcslen; */
124/* using std::hel::wcscmp; */
125/* using std::hel::wcsncmp; */
126/* using std::hel::wcscoll; */
127/* using std::hel::wcschr; */
128/* using std::hel::wcsrchr; */
129/* using std::hel::wcsspn; */
130/* using std::hel::wcscspn; */
131/* using std::hel::wcspbrk; */
132/* using std::hel::wcsstr; */
133/* using std::hel::wcstok; */
134
135/* using std::hel::wmemcpy; */
136/* using std::hel::wmemmove; */
137/* using std::hel::wmemcmp; */
138/* using std::hel::wmemchr; */
139/* using std::hel::wmemset; */
140
141/* using std::hel::msbinit; */
142/* using std::hel::btowc; */
143/* using std::hel::wctob; */
144/* using std::hel::mbrlen; */
145/* using std::hel::mbrtowc; */
146/* using std::hel::wctomb; */
147/* using std::hel::mbsrtowcs; */
148/* using std::hel::wcsrtombs; */
149
150/* using std::hel::fgetwc; */
151/* using std::hel::getwc; */
152/* using std::hel::fgetws; */
153/* using std::hel::fputwc; */
154/* using std::hel::putwc; */
155/* using std::hel::fputws; */
156/* using std::hel::getwchar; */
157/* using std::hel::putwchar; */
158/* using std::hel::ungetwc; */
159/* using std::hel::fwide; */
160/* using std::hel::wscanf; */
161/* using std::hel::fwscanf; */
162/* using std::hel::swscanf; */
163/* using std::hel::vwscanf; */
164/* using std::hel::vfwscanf; */
165/* using std::hel::vswscanf; */
166/* using std::hel::wprintf; */
167/* using std::hel::fwprintf; */
168/* using std::hel::swprintf; */
169
170/* using std::hel::wcsftime; */
171/* using std::hel::wcstol; */
172/* using std::hel::wcstoll; */
173/* using std::hel::wcstoul; */
174/* using std::hel::wcstoull; */
175/* using std::hel::wcstof; */
176/* using std::hel::wcstod; */
177/* using std::hel::wcstold; */
178
179#endif
Note: See TracBrowser for help on using the repository browser.