_Closes #191073_ - `libc/src/wchar/wcscoll.cpp` - Implementation of wcscoll - `libc/src/wchar/wcscoll.h` - Internal header for wcscoll - `libc/include/wchar.yaml` - Added wcscoll to public header spec - `libc/src/wchar/CMakeLists.txt` - Added build target for wcscoll - `libc/config/linux/x86_64/entrypoints.txt` - Registered wcscoll entrypoint - `libc/test/src/wchar/wcscoll_test.cpp` - Unit tests for wcscoll - `libc/test/src/wchar/CMakeLists.txt` - Added test target for wcscoll Note: Locale support is not yet implemented. `wcscoll` currently behaves identically to `wcscmp` until locale support is available in llvm-libc.
372 lines
8.0 KiB
YAML
372 lines
8.0 KiB
YAML
header: wchar.h
|
|
standards:
|
|
- stdc
|
|
macros:
|
|
- macro_name: "NULL"
|
|
macro_header: null-macro.h
|
|
- macro_name: WEOF
|
|
macro_header: wchar-macros.h
|
|
types:
|
|
- type_name: FILE
|
|
- type_name: rsize_t
|
|
- type_name: size_t
|
|
# TODO: Remove this once we have a function declaration using "struct tm"
|
|
# (wcsftime). We're declaring it here now, since libc++ expects
|
|
# forward-declaration of "struct tm" in the <wchar.h> header.
|
|
- type_name: struct_tm
|
|
- type_name: wint_t
|
|
- type_name: wchar_t
|
|
- type_name: mbstate_t
|
|
enums: []
|
|
objects: []
|
|
functions:
|
|
- name: wcslen
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- name: wcsnlen
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: size_t
|
|
- name: wctob
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: wint_t
|
|
- name: btowc
|
|
standards:
|
|
- stdc
|
|
return_type: wint_t
|
|
arguments:
|
|
- type: int
|
|
- name: mbrtowc
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const char *__restrict
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: mbsnrtowcs
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const char **__restrict
|
|
- type: size_t
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: mbsrtowcs
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const char **__restrict
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: mbsinit
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: mbstate_t *
|
|
- name: mblen
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: const char *
|
|
- type: size_t
|
|
- name: mbrlen
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: const char *__restrict
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: wmemset
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *
|
|
- type: wchar_t
|
|
- type: size_t
|
|
- name: wcschr
|
|
standards:
|
|
- stdc
|
|
return_type: const wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: wchar_t
|
|
- name: wcsncmp
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- type: size_t
|
|
- name: wcscmp
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wcscoll
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wcspbrk
|
|
standards:
|
|
- stdc
|
|
return_type: const wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wcsrchr
|
|
standards:
|
|
- stdc
|
|
return_type: const wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: wchar_t
|
|
- name: wcsspn
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wcscspn
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wmemcmp
|
|
standards:
|
|
- stdc
|
|
return_type: int
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- type: size_t
|
|
- name: wmemchr
|
|
standards:
|
|
- stdc
|
|
return_type: const wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: wchar_t
|
|
- type: size_t
|
|
- name: wmempcpy
|
|
standards:
|
|
- gnu
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *
|
|
- type: const wchar_t *
|
|
- type: size_t
|
|
- name: wmemcpy
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wmemmove
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *
|
|
- type: const wchar_t *
|
|
- type: size_t
|
|
- name: wcsncpy
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wcscat
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- name: wcslcat
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wcsstr
|
|
standards:
|
|
- stdc
|
|
return_type: const wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- type: const wchar_t *
|
|
- name: wcsncat
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wcsnrtombs
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: char *__restrict
|
|
- type: const wchar_t **__restrict
|
|
- type: size_t
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: wcsrtombs
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: char *__restrict
|
|
- type: const wchar_t **__restrict
|
|
- type: size_t
|
|
- type: mbstate_t *__restrict
|
|
- name: wcrtomb
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: char *__restrict
|
|
- type: wchar_t
|
|
- type: mbstate_t *__restrict
|
|
- name: wcscpy
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- name: wcsdup
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: const wchar_t *
|
|
- name: wcslcpy
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wcstok
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- name: wcpcpy
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- name: wcpncpy
|
|
standards:
|
|
- stdc
|
|
return_type: wchar_t *
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|
|
- name: wcstol
|
|
standards:
|
|
- stdc
|
|
return_type: long
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- type: int
|
|
- name: wcstoll
|
|
standards:
|
|
- stdc
|
|
return_type: long long
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- type: int
|
|
- name: wcstoul
|
|
standards:
|
|
- stdc
|
|
return_type: unsigned long
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- type: int
|
|
- name: wcstoull
|
|
standards:
|
|
- stdc
|
|
return_type: unsigned long long
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- type: int
|
|
- name: wcstof
|
|
standards:
|
|
- stdc
|
|
return_type: float
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- name: wcstod
|
|
standards:
|
|
- stdc
|
|
return_type: double
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- name: wcstold
|
|
standards:
|
|
- stdc
|
|
return_type: long double
|
|
arguments:
|
|
- type: const wchar_t *__restrict
|
|
- type: wchar_t **__restrict
|
|
- name: wcsxfrm
|
|
standards:
|
|
- stdc
|
|
return_type: size_t
|
|
arguments:
|
|
- type: wchar_t *__restrict
|
|
- type: const wchar_t *__restrict
|
|
- type: size_t
|