#include "simdutf.h" typedef struct SIMDUTFResult { int error; size_t count; } SIMDUTFResult; extern "C" { int simdutf__detect_encodings(const char* input, size_t length) { return simdutf::detect_encodings(input, length); } bool simdutf__validate_utf8(const char* buf, size_t len) { return simdutf::validate_utf8(buf, len); } SIMDUTFResult simdutf__validate_utf8_with_errors(const char* buf, size_t len) { auto res = simdutf::validate_utf8_with_errors(buf, len); return { res.error, res.count }; } bool simdutf__validate_ascii(const char* buf, size_t len) { return simdutf::validate_ascii(buf, len); } SIMDUTFResult simdutf__validate_ascii_with_errors(const char* buf, size_t len) { auto res = simdutf::validate_ascii_with_errors(buf, len); return { res.error, res.count }; } bool simdutf__validate_utf16le(const char16_t* buf, size_t len) { return simdutf::validate_utf16le(buf, len); } bool simdutf__validate_utf16be(const char16_t* buf, size_t len) { return simdutf::validate_utf16be(buf, len); } SIMDUTFResult simdutf__validate_utf16le_with_errors(const char16_t* buf, size_t len) { auto res = simdutf::validate_utf16le_with_errors(buf, len); return { res.error, res.count }; } SIMDUTFResult simdutf__validate_utf16be_with_errors(const char16_t* buf, size_t len) { auto res = simdutf::validate_utf16be_with_errors(buf, len); return { res.error, res.count }; } bool simdutf__validate_utf32(const char32_t* buf, size_t len) { return simdutf::validate_utf32(buf, len); } SIMDUTFResult simdutf__validate_utf32_with_errors(const char32_t* buf, size_t len) { auto res = simdutf::validate_utf32_with_errors(buf, len); return { res.error, res.count }; } size_t simdutf__convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) { return simdutf::convert_utf8_to_utf16le(buf, len, utf16_output); } size_t simdutf__convert_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) { return simdutf::convert_utf8_to_utf16be(buf, len, utf16_output); } SIMDUTFResult simdutf__convert_utf8_to_utf16le_with_errors(const char* buf, size_t len, char16_t* utf16_output) { auto res = simdutf::convert_utf8_to_utf16le_with_errors(buf, len, utf16_output); return { res.error, res.count }; } SIMDUTFResult simdutf__convert_utf8_to_utf16be_with_errors(const char* buf, size_t len, char16_t* utf16_output) { auto res = simdutf::convert_utf8_to_utf16be_with_errors(buf, len, utf16_output); return { res.error, res.count }; } size_t simdutf__convert_valid_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_valid_utf8_to_utf16le(buf, len, utf16_buffer); } size_t simdutf__convert_valid_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_valid_utf8_to_utf16be(buf, len, utf16_buffer); } size_t simdutf__convert_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_output) { return simdutf::convert_utf8_to_utf32(buf, len, utf32_output); } SIMDUTFResult simdutf__convert_utf8_to_utf32_with_errors(const char* buf, size_t len, char32_t* utf32_output) { auto res = simdutf::convert_utf8_to_utf32_with_errors(buf, len, utf32_output); return { res.error, res.count }; } size_t simdutf__convert_valid_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_buffer) { return simdutf::convert_valid_utf8_to_utf32(buf, len, utf32_buffer); } size_t simdutf__convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_utf16le_to_utf8(buf, len, utf8_buffer); } size_t simdutf__convert_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_utf16be_to_utf8(buf, len, utf8_buffer); } SIMDUTFResult simdutf__convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_buffer) { auto res = simdutf::convert_utf16le_to_utf8_with_errors(buf, len, utf8_buffer); return { res.error, res.count }; } SIMDUTFResult simdutf__convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_buffer) { auto res = simdutf::convert_utf16be_to_utf8_with_errors(buf, len, utf8_buffer); return { res.error, res.count }; } size_t simdutf__convert_valid_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_valid_utf16le_to_utf8(buf, len, utf8_buffer); } size_t simdutf__convert_valid_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_valid_utf16be_to_utf8(buf, len, utf8_buffer); } size_t simdutf__convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_utf32_to_utf8(buf, len, utf8_buffer); } SIMDUTFResult simdutf__convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_buffer) { auto res = simdutf::convert_utf32_to_utf8_with_errors(buf, len, utf8_buffer); return { res.error, res.count }; } size_t simdutf__convert_valid_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_buffer) { return simdutf::convert_valid_utf32_to_utf8(buf, len, utf8_buffer); } size_t simdutf__convert_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_utf32_to_utf16le(buf, len, utf16_buffer); } size_t simdutf__convert_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_utf32_to_utf16be(buf, len, utf16_buffer); } SIMDUTFResult simdutf__convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_buffer) { auto res = simdutf::convert_utf32_to_utf16le_with_errors(buf, len, utf16_buffer); return { res.error, res.count }; } SIMDUTFResult simdutf__convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_buffer) { auto res = simdutf::convert_utf32_to_utf16be_with_errors(buf, len, utf16_buffer); return { res.error, res.count }; } size_t simdutf__convert_valid_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_valid_utf32_to_utf16le(buf, len, utf16_buffer); } size_t simdutf__convert_valid_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_buffer) { return simdutf::convert_valid_utf32_to_utf16be(buf, len, utf16_buffer); } size_t simdutf__convert_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_buffer) { return simdutf::convert_utf16le_to_utf32(buf, len, utf32_buffer); } size_t simdutf__convert_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_buffer) { return simdutf::convert_utf16be_to_utf32(buf, len, utf32_buffer); } SIMDUTFResult simdutf__convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_buffer) { auto res = simdutf::convert_utf16le_to_utf32_with_errors(buf, len, utf32_buffer); return { res.error, res.count }; } SIMDUTFResult simdutf__convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_buffer) { auto res = simdutf::convert_utf16be_to_utf32_with_errors(buf, len, utf32_buffer); return { res.error, res.count }; } size_t simdutf__convert_valid_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_buffer) { return simdutf::convert_valid_utf16le_to_utf32(buf, len, utf32_buffer); } size_t simdutf__convert_valid_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_buffer) { return simdutf::convert_valid_utf16be_to_utf32(buf, len, utf32_buffer); } void simdutf__change_endianness_utf16(const char16_t* buf, size_t length, char16_t* output) { simdutf::change_endianness_utf16(buf, length, output); } size_t simdutf__count_utf16le(const char16_t* buf, size_t length) { return simdutf::count_utf16le(buf, length); } size_t simdutf__count_utf16be(const char16_t* buf, size_t length) { return simdutf::count_utf16be(buf, length); } size_t simdutf__count_utf8(const char* buf, size_t length) { return simdutf::count_utf8(buf, length); } size_t simdutf__utf8_length_from_utf16le(const char16_t* input, size_t length) { return simdutf::utf8_length_from_utf16le(input, length); } size_t simdutf__utf8_length_from_utf16be(const char16_t* input, size_t length) { return simdutf::utf8_length_from_utf16be(input, length); } size_t simdutf__utf32_length_from_utf16le(const char16_t* input, size_t length) { return simdutf::utf32_length_from_utf16le(input, length); } size_t simdutf__utf32_length_from_utf16be(const char16_t* input, size_t length) { return simdutf::utf32_length_from_utf16be(input, length); } size_t simdutf__utf16_length_from_utf8(const char* input, size_t length) { return simdutf::utf16_length_from_utf8(input, length); } size_t simdutf__utf8_length_from_utf32(const char32_t* input, size_t length) { return simdutf::utf8_length_from_utf32(input, length); } size_t simdutf__utf16_length_from_utf32(const char32_t* input, size_t length) { return simdutf::utf16_length_from_utf32(input, length); } size_t simdutf__utf32_length_from_utf8(const char* input, size_t length) { return simdutf::utf32_length_from_utf8(input, length); } }ed/precompile-linux-dependencies'>jarred/precompile-linux-dependencies Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets/buffer-to-string.mjs (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2023-09-21Regenerate builtinsGravatar Jarred Sumner 3-5009/+5009
2023-09-21Fix `make jsc` on Linux (#4779)Gravatar Aaron Dewes 1-1/+1
* Fix `make jsc` on Linux Previously, it failed with `/usr/bin/bash: Line 3: -DUSE_BUN_JSC_ADDITIONS=ON: Command not found`. * Update Makefile Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-09-21PrettierGravatar Jarred Sumner 1-11/+10
2023-09-20fix: add check to sqlite extension loading logic (#5773)Gravatar Liz 2-0/+9
The sqlite3 logic to dynamically load extensions can be disabled to save space, which macos does by default. sqlite3 provides a api to check for these compile time settings at runtime, we can use that to throw a js error rather then crashing. It is worth noting though that the api to check for these settings at runtime itself can be disabled through SQLITE_OMIT_COMPILEOPTION_DIAGS but this seams to be a edge case.
2023-09-20fix(console.log): change default depth from 8 to 2 (#5839)Gravatar Jibran Kalia 3-1/+22
This make it as the same default depth in Node. Source: https://github.com/nodejs/node/blob/480ab8c3a40451d5ea459dd35b4039679b26e195/doc/api/console.md?plain=1#L285
2023-09-20In http client, use .toOwnedSlice() instead of potentially re-using the ↵Gravatar Jarred Sumner 1-4/+7
WTFString here
2023-09-20fix(fetch): fix redirect in relative path location. (#5781)Gravatar Ai Hoshino 2-14/+106
* fix(fetch): fix redirect in relative path location. * fix utf-8 encoding * use server.reload * check buf size * add RedirectURLTooLong test
2023-09-20remove /test.js and git ignore it - sorryGravatar dave caruso 2-1/+1
2023-09-20docs(project): development fix Arch install-dependencies command (#5270)Gravatar saurabh 1-1/+1
sudo is required to run pacman if not root user
2023-09-20fix(run): interpret extensionless files as typescript (#5711)Gravatar dave caruso 13-19/+76
* test * gadsgsagdsa * add better err msg * r * oops * ok
2023-09-20fix(ffi) fix size limit for dlopen (#5516)Gravatar Ciro Spaciari 8-5016/+5306
* fix size limit * 63 * throw error * ffi.test.js * add macos tests * oops
2023-09-20feat(encoding): support BOM detection (#5550)Gravatar WingLim 5-8/+71
* fix(encoding): export `getIgnoreBOM` * feat(encoding): support ignoreBOM * fix(encoding): not replace BOM to 0xFFFD * chore: use strict equal
2023-09-20feat(node:dns): implement `dns.lookupService` (#5613)Gravatar Ai Hoshino 6-9/+492
* feat(node:dns): implement dns.lookupService Close: #4347 * fix flags * add `getSockaddr` * fix sockaddr size * flaky test
2023-09-20implement `Module.prototype._compile` (#5840)Gravatar dave caruso 4-2/+78
2023-09-20feat(runtime): implement `console._stdout` (#5842)Gravatar dave caruso 2-1/+59
* implement console._stdout * nonenum
2023-09-20Improve types for `test.each`, `describe.each` (#5838)Gravatar Colin McDonnell 2-10/+59
* Improve types for each * more * remove
2023-09-20Fix rendering of bun.lockb in vscode extensionGravatar Ashcon Partovi 5-114/+4
2023-09-20Run bun fmtGravatar Ashcon Partovi 2-12/+9
2023-09-20Update quickstartGravatar Colin McDonnell 1-0/+19
2023-09-20Update prisma guideGravatar Colin McDonnell 1-0/+6
2023-09-20Update env docGravatar Colin McDonnell 1-1/+1
2023-09-20Clarify hot modeGravatar Colin McDonnell 1-10/+9
2023-09-20[bun install] Add `-E` as alias of `--exact` (#5104)Gravatar Jonah Snider 2-2/+57
* [bun install] Add `-E` as alias of `--exact` * Add test for -E flag
2023-09-20feat: switch disableTelemetry to bunfig (#5690)Gravatar Lucas Coratger 3-1/+14
* feat: switch disableTelemetry to bunfig * feat: zig fmt * revert: the env variable and invert the logic of telemetry --------- Co-authored-by: MrPalixir <73360179+MrPalixir@users.noreply.github.com>
2023-09-20Treat `undefined` value as empty in expect.toThrow (#5788)Gravatar LongYinan 1-3/+3
Fix: https://github.com/napi-rs/napi-rs/blob/main/examples/napi/__tests__/test.framework.js#L16-L19
2023-09-20Fix various bugs in vscode extension (#5772)Gravatar JeremyFunk 3-9/+85
* Fix bugs * Fix bugs * Revert "Fix bugs" This reverts commit 608639eb2214fdf4310477051ce47d20702b5dd0.
2023-09-20add `emitDecoratorMetadata` (#5777)Gravatar Dylan Conway 19-110/+1884
* some progess * needs more tests * make tests easier to debug * get metadata for constructor arg decorators * fix some things * merge `emitDecoratorMetadata` option * remove `^` * bundler tests and get option from tsconfig earlier * remove spaces * fix tests
2023-09-20fix(doc): correct `server.reload` (#5799)Gravatar Ai Hoshino 1-1/+1
2023-09-20Call `Error.prepareStackTrace` on `new Error().stack` (#5802)Gravatar Jarred Sumner 6-155/+277
* Always call `Error.prepareStackTrace` * Support node:vm * Remove this * Handle more cases --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-09-20Fixes #5800Gravatar Jarred Sumner 1-1/+1
Fixes #5800
2023-09-20Fix path used in bunx (#5785)Gravatar Jarred Sumner 2-26/+51
* Fix path used in bunx * Add test * Use a different package --------- Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-09-20Fix RedirectURLTooLong errors (#5786)Gravatar ggobbe 1-1/+1
The URL to download the manifest for Artifact Registry in Google is larger than 4092 bytes. cf. issue #4748
2023-09-19Show when a newer version is available in the install screen (#5780)Gravatar Jarred Sumner 3-14/+95
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
2023-09-19Fix broken linksGravatar Colin McDonnell 4-4/+4