2020-01-18 09:38:21 +01:00
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org>
|
|
|
|
|
*
|
2021-04-22 01:24:48 -07:00
|
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
2020-01-18 09:38:21 +01:00
|
|
|
*/
|
|
|
|
|
|
2019-02-24 15:19:32 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <stddef.h>
|
2019-05-28 11:53:16 +02:00
|
|
|
#include <sys/cdefs.h>
|
2019-02-24 15:19:32 +01:00
|
|
|
|
|
|
|
|
__BEGIN_DECLS
|
|
|
|
|
|
|
|
|
|
#ifndef WEOF
|
2019-05-28 11:53:16 +02:00
|
|
|
# define WEOF (0xffffffffu)
|
2019-02-24 15:19:32 +01:00
|
|
|
#endif
|
|
|
|
|
|
2021-05-27 12:47:44 +02:00
|
|
|
typedef __WINT_TYPE__ wint_t;
|
2021-05-27 12:44:54 +02:00
|
|
|
typedef unsigned long int wctype_t;
|
2021-05-27 12:47:44 +02:00
|
|
|
|
2021-09-19 12:48:04 +02:00
|
|
|
// A zero-initialized mbstate_t struct must be a valid initial state.
|
2021-06-02 14:56:43 +02:00
|
|
|
typedef struct {
|
2021-06-05 12:44:01 +02:00
|
|
|
unsigned char bytes[4];
|
2021-09-19 13:31:16 +02:00
|
|
|
unsigned int stored_bytes;
|
2021-06-02 14:56:43 +02:00
|
|
|
} mbstate_t;
|
|
|
|
|
|
2019-10-12 22:47:25 -03:00
|
|
|
size_t wcslen(const wchar_t*);
|
|
|
|
|
wchar_t* wcscpy(wchar_t*, const wchar_t*);
|
2019-11-11 14:08:20 +01:00
|
|
|
wchar_t* wcsncpy(wchar_t*, const wchar_t*, size_t);
|
2019-10-12 22:47:25 -03:00
|
|
|
int wcscmp(const wchar_t*, const wchar_t*);
|
2021-01-18 09:57:12 +01:00
|
|
|
int wcsncmp(const wchar_t*, const wchar_t*, size_t);
|
2019-10-12 22:47:25 -03:00
|
|
|
wchar_t* wcschr(const wchar_t*, int);
|
2019-11-11 14:08:20 +01:00
|
|
|
const wchar_t* wcsrchr(const wchar_t*, wchar_t);
|
|
|
|
|
wchar_t* wcscat(wchar_t*, const wchar_t*);
|
|
|
|
|
wchar_t* wcsncat(wchar_t*, const wchar_t*, size_t);
|
2021-01-18 09:59:44 +01:00
|
|
|
wchar_t* wcstok(wchar_t*, const wchar_t*, wchar_t**);
|
|
|
|
|
long wcstol(const wchar_t*, wchar_t**, int);
|
|
|
|
|
long long wcstoll(const wchar_t*, wchar_t**, int);
|
2021-05-27 12:47:44 +02:00
|
|
|
wint_t btowc(int c);
|
2021-06-02 20:54:31 +02:00
|
|
|
size_t mbrtowc(wchar_t*, const char*, size_t, mbstate_t*);
|
|
|
|
|
size_t mbrlen(const char*, size_t, mbstate_t*);
|
|
|
|
|
size_t wcrtomb(char*, wchar_t, mbstate_t*);
|
|
|
|
|
int wcscoll(const wchar_t*, const wchar_t*);
|
|
|
|
|
int wctob(wint_t);
|
|
|
|
|
int mbsinit(const mbstate_t*);
|
2021-09-22 08:52:27 +00:00
|
|
|
wchar_t* wcspbrk(const wchar_t*, const wchar_t*);
|
2021-09-22 08:54:23 +00:00
|
|
|
wchar_t* wcsstr(const wchar_t*, const wchar_t*);
|
2021-09-22 08:56:34 +00:00
|
|
|
wchar_t* wmemchr(const wchar_t*, wchar_t, size_t);
|
2021-09-22 10:21:06 +00:00
|
|
|
wchar_t* wmemcpy(wchar_t*, const wchar_t*, size_t);
|
2021-09-22 10:22:24 +00:00
|
|
|
wchar_t* wmemset(wchar_t*, wchar_t, size_t);
|
2021-09-22 10:24:12 +00:00
|
|
|
wchar_t* wmemmove(wchar_t*, const wchar_t*, size_t);
|
2021-09-22 12:14:15 +00:00
|
|
|
unsigned long wcstoul(const wchar_t*, wchar_t**, int);
|
2021-09-22 12:15:20 +00:00
|
|
|
unsigned long long wcstoull(const wchar_t*, wchar_t**, int);
|
2021-09-22 12:26:01 +00:00
|
|
|
float wcstof(const wchar_t*, wchar_t**);
|
2021-09-22 12:34:01 +00:00
|
|
|
double wcstod(const wchar_t*, wchar_t**);
|
2021-09-22 12:38:01 +00:00
|
|
|
long double wcstold(const wchar_t*, wchar_t**);
|
2021-09-22 12:54:01 +00:00
|
|
|
int swprintf(wchar_t*, size_t, const wchar_t*, ...);
|
2019-10-12 22:47:25 -03:00
|
|
|
|
2019-02-24 15:19:32 +01:00
|
|
|
__END_DECLS
|