Buckets:
arudradey/fullhtml-storage / emsdk /upstream /emscripten /system /lib /llvm-libc /src /wchar /wcrtomb.cpp
| //===-- Implementation of wcrtomb -----------------------------------------===// | |
| // | |
| // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. | |
| // See https://llvm.org/LICENSE.txt for license information. | |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
| // | |
| //===----------------------------------------------------------------------===// | |
| namespace LIBC_NAMESPACE_DECL { | |
| LLVM_LIBC_FUNCTION(size_t, wcrtomb, | |
| (char *__restrict s, wchar_t wc, mbstate_t *__restrict ps)) { | |
| static internal::mbstate internal_mbstate; | |
| // when s is nullptr, this is equivalent to wcrtomb(buf, L'\0', ps) | |
| char buf[sizeof(wchar_t) / sizeof(char)]; | |
| if (s == nullptr) { | |
| s = buf; | |
| wc = L'\0'; | |
| } | |
| auto result = internal::wcrtomb( | |
| s, wc, | |
| ps == nullptr ? &internal_mbstate | |
| : reinterpret_cast<internal::mbstate *>(ps)); | |
| if (!result.has_value()) { | |
| libc_errno = result.error(); | |
| return -1; | |
| } | |
| return result.value(); | |
| } | |
| } // namespace LIBC_NAMESPACE_DECL | |
Xet Storage Details
- Size:
- 1.33 kB
- Xet hash:
- 1075398c2220719cfb26aa356db69ee0c053207e58a627b1175ffe87c90426c5
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.