react-native-quick-crypto 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +5 -1
- package/cpp/argon2/HybridArgon2.cpp +10 -3
- package/cpp/blake3/HybridBlake3.cpp +5 -3
- package/cpp/cipher/CCMCipher.cpp +29 -16
- package/cpp/cipher/CCMCipher.hpp +2 -4
- package/cpp/cipher/ChaCha20Cipher.cpp +14 -18
- package/cpp/cipher/ChaCha20Cipher.hpp +2 -4
- package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +34 -23
- package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +2 -4
- package/cpp/cipher/GCMCipher.cpp +14 -15
- package/cpp/cipher/HybridCipher.cpp +39 -36
- package/cpp/cipher/HybridCipher.hpp +17 -1
- package/cpp/cipher/HybridRsaCipher.cpp +74 -29
- package/cpp/cipher/OCBCipher.cpp +4 -3
- package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +14 -13
- package/cpp/cipher/XSalsa20Cipher.cpp +72 -6
- package/cpp/cipher/XSalsa20Cipher.hpp +25 -3
- package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +21 -25
- package/cpp/dh/HybridDiffieHellman.cpp +29 -0
- package/cpp/ec/HybridEcKeyPair.cpp +35 -33
- package/cpp/ec/HybridEcKeyPair.hpp +3 -7
- package/cpp/ecdh/HybridECDH.cpp +23 -0
- package/cpp/ed25519/HybridEdKeyPair.cpp +73 -117
- package/cpp/ed25519/HybridEdKeyPair.hpp +5 -9
- package/cpp/hash/HybridHash.cpp +5 -7
- package/cpp/hkdf/HybridHkdf.cpp +6 -4
- package/cpp/hmac/HybridHmac.cpp +4 -6
- package/cpp/kmac/HybridKmac.cpp +4 -4
- package/cpp/mldsa/HybridMlDsaKeyPair.cpp +37 -49
- package/cpp/mlkem/HybridMlKemKeyPair.cpp +39 -43
- package/cpp/pbkdf2/HybridPbkdf2.cpp +7 -8
- package/cpp/rsa/HybridRsaKeyPair.cpp +5 -8
- package/cpp/rsa/HybridRsaKeyPair.hpp +4 -7
- package/cpp/scrypt/HybridScrypt.cpp +6 -4
- package/cpp/sign/HybridSignHandle.cpp +25 -68
- package/cpp/sign/HybridVerifyHandle.cpp +23 -60
- package/cpp/utils/HybridUtils.cpp +183 -43
- package/cpp/utils/HybridUtils.hpp +9 -2
- package/cpp/utils/QuickCryptoUtils.hpp +72 -0
- package/lib/commonjs/argon2.js +51 -2
- package/lib/commonjs/argon2.js.map +1 -1
- package/lib/commonjs/cipher.js +109 -11
- package/lib/commonjs/cipher.js.map +1 -1
- package/lib/commonjs/dsa.js +8 -2
- package/lib/commonjs/dsa.js.map +1 -1
- package/lib/commonjs/hash.js +15 -5
- package/lib/commonjs/hash.js.map +1 -1
- package/lib/commonjs/hkdf.js +33 -6
- package/lib/commonjs/hkdf.js.map +1 -1
- package/lib/commonjs/hmac.js +15 -5
- package/lib/commonjs/hmac.js.map +1 -1
- package/lib/commonjs/keys/publicCipher.js +10 -4
- package/lib/commonjs/keys/publicCipher.js.map +1 -1
- package/lib/commonjs/random.js +11 -2
- package/lib/commonjs/random.js.map +1 -1
- package/lib/commonjs/rsa.js +12 -5
- package/lib/commonjs/rsa.js.map +1 -1
- package/lib/commonjs/scrypt.js +47 -6
- package/lib/commonjs/scrypt.js.map +1 -1
- package/lib/commonjs/subtle.js +76 -5
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/commonjs/utils/cipher.js +18 -7
- package/lib/commonjs/utils/cipher.js.map +1 -1
- package/lib/commonjs/utils/conversion.js +33 -9
- package/lib/commonjs/utils/conversion.js.map +1 -1
- package/lib/commonjs/utils/timingSafeEqual.js +7 -2
- package/lib/commonjs/utils/timingSafeEqual.js.map +1 -1
- package/lib/commonjs/x509certificate.js +6 -6
- package/lib/commonjs/x509certificate.js.map +1 -1
- package/lib/module/argon2.js +51 -2
- package/lib/module/argon2.js.map +1 -1
- package/lib/module/cipher.js +109 -11
- package/lib/module/cipher.js.map +1 -1
- package/lib/module/dsa.js +8 -2
- package/lib/module/dsa.js.map +1 -1
- package/lib/module/hash.js +15 -5
- package/lib/module/hash.js.map +1 -1
- package/lib/module/hkdf.js +33 -6
- package/lib/module/hkdf.js.map +1 -1
- package/lib/module/hmac.js +15 -5
- package/lib/module/hmac.js.map +1 -1
- package/lib/module/keys/publicCipher.js +10 -4
- package/lib/module/keys/publicCipher.js.map +1 -1
- package/lib/module/random.js +11 -2
- package/lib/module/random.js.map +1 -1
- package/lib/module/rsa.js +11 -4
- package/lib/module/rsa.js.map +1 -1
- package/lib/module/scrypt.js +47 -6
- package/lib/module/scrypt.js.map +1 -1
- package/lib/module/subtle.js +76 -5
- package/lib/module/subtle.js.map +1 -1
- package/lib/module/utils/cipher.js +18 -7
- package/lib/module/utils/cipher.js.map +1 -1
- package/lib/module/utils/conversion.js +33 -9
- package/lib/module/utils/conversion.js.map +1 -1
- package/lib/module/utils/timingSafeEqual.js +8 -3
- package/lib/module/utils/timingSafeEqual.js.map +1 -1
- package/lib/module/x509certificate.js +6 -6
- package/lib/module/x509certificate.js.map +1 -1
- package/lib/typescript/argon2.d.ts.map +1 -1
- package/lib/typescript/cipher.d.ts +2 -2
- package/lib/typescript/cipher.d.ts.map +1 -1
- package/lib/typescript/dsa.d.ts.map +1 -1
- package/lib/typescript/hash.d.ts +2 -2
- package/lib/typescript/hash.d.ts.map +1 -1
- package/lib/typescript/hkdf.d.ts.map +1 -1
- package/lib/typescript/hmac.d.ts +2 -2
- package/lib/typescript/hmac.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keys/publicCipher.d.ts.map +1 -1
- package/lib/typescript/random.d.ts.map +1 -1
- package/lib/typescript/rsa.d.ts.map +1 -1
- package/lib/typescript/scrypt.d.ts.map +1 -1
- package/lib/typescript/specs/utils.nitro.d.ts +0 -2
- package/lib/typescript/specs/utils.nitro.d.ts.map +1 -1
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/lib/typescript/utils/cipher.d.ts +13 -1
- package/lib/typescript/utils/cipher.d.ts.map +1 -1
- package/lib/typescript/utils/conversion.d.ts +9 -6
- package/lib/typescript/utils/conversion.d.ts.map +1 -1
- package/lib/typescript/utils/timingSafeEqual.d.ts.map +1 -1
- package/lib/typescript/x509certificate.d.ts.map +1 -1
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +0 -2
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +0 -3
- package/package.json +37 -5
- package/src/argon2.ts +80 -2
- package/src/cipher.ts +139 -15
- package/src/dsa.ts +11 -2
- package/src/hash.ts +17 -7
- package/src/hkdf.ts +44 -6
- package/src/hmac.ts +17 -7
- package/src/keys/publicCipher.ts +10 -4
- package/src/random.ts +11 -2
- package/src/rsa.ts +18 -4
- package/src/scrypt.ts +73 -6
- package/src/specs/utils.nitro.ts +0 -2
- package/src/subtle.ts +90 -8
- package/src/utils/cipher.ts +30 -8
- package/src/utils/conversion.ts +58 -20
- package/src/utils/timingSafeEqual.ts +8 -3
- package/src/x509certificate.ts +5 -6
- package/deps/blake3/.cargo/config.toml +0 -2
- package/deps/blake3/.git-blame-ignore-revs +0 -2
- package/deps/blake3/.github/workflows/build_b3sum.py +0 -38
- package/deps/blake3/.github/workflows/ci.yml +0 -491
- package/deps/blake3/.github/workflows/tag.yml +0 -43
- package/deps/blake3/.github/workflows/upload_github_release_asset.py +0 -73
- package/deps/blake3/CONTRIBUTING.md +0 -31
- package/deps/blake3/Cargo.toml +0 -135
- package/deps/blake3/b3sum/Cargo.lock +0 -513
- package/deps/blake3/b3sum/Cargo.toml +0 -26
- package/deps/blake3/b3sum/README.md +0 -72
- package/deps/blake3/b3sum/src/main.rs +0 -564
- package/deps/blake3/b3sum/src/unit_tests.rs +0 -235
- package/deps/blake3/b3sum/tests/cli_tests.rs +0 -680
- package/deps/blake3/b3sum/what_does_check_do.md +0 -176
- package/deps/blake3/benches/bench.rs +0 -623
- package/deps/blake3/build.rs +0 -389
- package/deps/blake3/c/CMakeLists.txt +0 -383
- package/deps/blake3/c/CMakePresets.json +0 -73
- package/deps/blake3/c/Makefile.testing +0 -82
- package/deps/blake3/c/blake3-config.cmake.in +0 -14
- package/deps/blake3/c/blake3_avx2.c +0 -326
- package/deps/blake3/c/blake3_avx2_x86-64_unix.S +0 -1815
- package/deps/blake3/c/blake3_avx2_x86-64_windows_gnu.S +0 -1817
- package/deps/blake3/c/blake3_avx2_x86-64_windows_msvc.asm +0 -1828
- package/deps/blake3/c/blake3_avx512.c +0 -1388
- package/deps/blake3/c/blake3_avx512_x86-64_unix.S +0 -4824
- package/deps/blake3/c/blake3_avx512_x86-64_windows_gnu.S +0 -2615
- package/deps/blake3/c/blake3_avx512_x86-64_windows_msvc.asm +0 -2634
- package/deps/blake3/c/blake3_c_rust_bindings/Cargo.toml +0 -32
- package/deps/blake3/c/blake3_c_rust_bindings/README.md +0 -4
- package/deps/blake3/c/blake3_c_rust_bindings/benches/bench.rs +0 -477
- package/deps/blake3/c/blake3_c_rust_bindings/build.rs +0 -253
- package/deps/blake3/c/blake3_c_rust_bindings/cross_test.sh +0 -31
- package/deps/blake3/c/blake3_c_rust_bindings/src/lib.rs +0 -333
- package/deps/blake3/c/blake3_c_rust_bindings/src/test.rs +0 -696
- package/deps/blake3/c/blake3_sse2.c +0 -566
- package/deps/blake3/c/blake3_sse2_x86-64_unix.S +0 -2291
- package/deps/blake3/c/blake3_sse2_x86-64_windows_gnu.S +0 -2332
- package/deps/blake3/c/blake3_sse2_x86-64_windows_msvc.asm +0 -2350
- package/deps/blake3/c/blake3_sse41.c +0 -560
- package/deps/blake3/c/blake3_sse41_x86-64_unix.S +0 -2028
- package/deps/blake3/c/blake3_sse41_x86-64_windows_gnu.S +0 -2069
- package/deps/blake3/c/blake3_sse41_x86-64_windows_msvc.asm +0 -2089
- package/deps/blake3/c/blake3_tbb.cpp +0 -37
- package/deps/blake3/c/dependencies/CMakeLists.txt +0 -3
- package/deps/blake3/c/dependencies/tbb/CMakeLists.txt +0 -28
- package/deps/blake3/c/example.c +0 -36
- package/deps/blake3/c/example_tbb.c +0 -57
- package/deps/blake3/c/libblake3.pc.in +0 -12
- package/deps/blake3/c/main.c +0 -166
- package/deps/blake3/c/test.py +0 -97
- package/deps/blake3/media/B3.svg +0 -70
- package/deps/blake3/media/BLAKE3.svg +0 -85
- package/deps/blake3/media/speed.svg +0 -1474
- package/deps/blake3/reference_impl/Cargo.toml +0 -8
- package/deps/blake3/reference_impl/README.md +0 -14
- package/deps/blake3/reference_impl/reference_impl.rs +0 -374
- package/deps/blake3/src/ffi_avx2.rs +0 -65
- package/deps/blake3/src/ffi_avx512.rs +0 -169
- package/deps/blake3/src/ffi_neon.rs +0 -82
- package/deps/blake3/src/ffi_sse2.rs +0 -126
- package/deps/blake3/src/ffi_sse41.rs +0 -126
- package/deps/blake3/src/guts.rs +0 -60
- package/deps/blake3/src/hazmat.rs +0 -704
- package/deps/blake3/src/io.rs +0 -64
- package/deps/blake3/src/join.rs +0 -92
- package/deps/blake3/src/lib.rs +0 -1835
- package/deps/blake3/src/platform.rs +0 -587
- package/deps/blake3/src/portable.rs +0 -198
- package/deps/blake3/src/rust_avx2.rs +0 -474
- package/deps/blake3/src/rust_sse2.rs +0 -775
- package/deps/blake3/src/rust_sse41.rs +0 -766
- package/deps/blake3/src/test.rs +0 -1049
- package/deps/blake3/src/traits.rs +0 -227
- package/deps/blake3/src/wasm32_simd.rs +0 -794
- package/deps/blake3/test_vectors/Cargo.toml +0 -19
- package/deps/blake3/test_vectors/cross_test.sh +0 -25
- package/deps/blake3/test_vectors/src/bin/generate.rs +0 -4
- package/deps/blake3/test_vectors/src/lib.rs +0 -350
- package/deps/blake3/test_vectors/test_vectors.json +0 -217
- package/deps/blake3/tools/compiler_version/Cargo.toml +0 -7
- package/deps/blake3/tools/compiler_version/build.rs +0 -6
- package/deps/blake3/tools/compiler_version/src/main.rs +0 -27
- package/deps/blake3/tools/instruction_set_support/Cargo.toml +0 -6
- package/deps/blake3/tools/instruction_set_support/src/main.rs +0 -10
- package/deps/blake3/tools/release.md +0 -16
- package/deps/ncrypto/.bazelignore +0 -4
- package/deps/ncrypto/.bazelrc +0 -1
- package/deps/ncrypto/.bazelversion +0 -1
- package/deps/ncrypto/.clang-format +0 -111
- package/deps/ncrypto/.github/workflows/bazel.yml +0 -58
- package/deps/ncrypto/.github/workflows/commitlint.yml +0 -16
- package/deps/ncrypto/.github/workflows/linter.yml +0 -38
- package/deps/ncrypto/.github/workflows/macos.yml +0 -43
- package/deps/ncrypto/.github/workflows/release-please.yml +0 -16
- package/deps/ncrypto/.github/workflows/ubuntu.yml +0 -128
- package/deps/ncrypto/.github/workflows/visual-studio.yml +0 -49
- package/deps/ncrypto/.python-version +0 -1
- package/deps/ncrypto/.release-please-manifest.json +0 -3
- package/deps/ncrypto/BUILD.bazel +0 -44
- package/deps/ncrypto/CHANGELOG.md +0 -37
- package/deps/ncrypto/CMakeLists.txt +0 -79
- package/deps/ncrypto/MODULE.bazel +0 -16
- package/deps/ncrypto/MODULE.bazel.lock +0 -461
- package/deps/ncrypto/cmake/CPM.cmake +0 -1225
- package/deps/ncrypto/cmake/ncrypto-flags.cmake +0 -17
- package/deps/ncrypto/ncrypto.pc.in +0 -10
- package/deps/ncrypto/patches/0001-Expose-libdecrepit-so-NodeJS-can-use-it-for-ncrypto.patch +0 -28
- package/deps/ncrypto/pyproject.toml +0 -38
- package/deps/ncrypto/release-please-config.json +0 -11
- package/deps/ncrypto/src/CMakeLists.txt +0 -40
- package/deps/ncrypto/tests/BUILD.bazel +0 -11
- package/deps/ncrypto/tests/CMakeLists.txt +0 -7
- package/deps/ncrypto/tests/basic.cpp +0 -856
- package/deps/ncrypto/tools/run-clang-format.sh +0 -42
- package/deps/simdutf/.clang-format +0 -4
- package/deps/simdutf/.github/ISSUE_TEMPLATE/bug_report.md +0 -62
- package/deps/simdutf/.github/ISSUE_TEMPLATE/config.yml +0 -1
- package/deps/simdutf/.github/ISSUE_TEMPLATE/feature_request.md +0 -35
- package/deps/simdutf/.github/ISSUE_TEMPLATE/standard-issue-template.md +0 -29
- package/deps/simdutf/.github/pull_request_template.md +0 -51
- package/deps/simdutf/.github/workflows/aarch64.yml +0 -39
- package/deps/simdutf/.github/workflows/alpine.yml +0 -27
- package/deps/simdutf/.github/workflows/amalgamation_demos.yml +0 -34
- package/deps/simdutf/.github/workflows/armv7.yml +0 -32
- package/deps/simdutf/.github/workflows/atomic_fuzz.yml +0 -25
- package/deps/simdutf/.github/workflows/cifuzz.yml +0 -37
- package/deps/simdutf/.github/workflows/clangformat.yml +0 -36
- package/deps/simdutf/.github/workflows/debian-latestcxxstandards.yml +0 -40
- package/deps/simdutf/.github/workflows/debian.yml +0 -33
- package/deps/simdutf/.github/workflows/documentation.yml +0 -36
- package/deps/simdutf/.github/workflows/emscripten.yml +0 -19
- package/deps/simdutf/.github/workflows/loongarch64-gcc-14.2.yml +0 -39
- package/deps/simdutf/.github/workflows/macos-latest.yml +0 -29
- package/deps/simdutf/.github/workflows/msys2-clang.yml +0 -48
- package/deps/simdutf/.github/workflows/msys2.yml +0 -50
- package/deps/simdutf/.github/workflows/ppc64le.yml +0 -29
- package/deps/simdutf/.github/workflows/rvv-1024-clang-18.yml +0 -35
- package/deps/simdutf/.github/workflows/rvv-128-clang-17.yml +0 -35
- package/deps/simdutf/.github/workflows/rvv-256-gcc-14.yml +0 -31
- package/deps/simdutf/.github/workflows/s390x.yml +0 -29
- package/deps/simdutf/.github/workflows/selective-amalgamation.yml +0 -29
- package/deps/simdutf/.github/workflows/typos.yml +0 -19
- package/deps/simdutf/.github/workflows/ubuntu22-cxx20.yml +0 -30
- package/deps/simdutf/.github/workflows/ubuntu22.yml +0 -32
- package/deps/simdutf/.github/workflows/ubuntu22_gcc12.yml +0 -27
- package/deps/simdutf/.github/workflows/ubuntu22sani.yml +0 -29
- package/deps/simdutf/.github/workflows/ubuntu24-cxxstandards.yml +0 -34
- package/deps/simdutf/.github/workflows/ubuntu24-unsignedchar.yml +0 -34
- package/deps/simdutf/.github/workflows/ubuntu24.yml +0 -32
- package/deps/simdutf/.github/workflows/ubuntu24sani.yml +0 -36
- package/deps/simdutf/.github/workflows/ubuntu24sani_clang.yml +0 -29
- package/deps/simdutf/.github/workflows/vs17-arm-ci.yml +0 -21
- package/deps/simdutf/.github/workflows/vs17-ci-cxx20.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-ci.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-clang-ci.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-cxxstandards.yml +0 -36
- package/deps/simdutf/AI_USAGE_POLICY.md +0 -56
- package/deps/simdutf/AUTHORS +0 -6
- package/deps/simdutf/CMakeLists.txt +0 -231
- package/deps/simdutf/CONTRIBUTING.md +0 -214
- package/deps/simdutf/CONTRIBUTORS +0 -1
- package/deps/simdutf/Doxyfile +0 -2584
- package/deps/simdutf/Makefile.crosscompile +0 -54
- package/deps/simdutf/README-RVV.md +0 -16
- package/deps/simdutf/SECURITY.md +0 -8
- package/deps/simdutf/benchmarks/CMakeLists.txt +0 -101
- package/deps/simdutf/benchmarks/alignment.cpp +0 -150
- package/deps/simdutf/benchmarks/base64/CMakeLists.txt +0 -30
- package/deps/simdutf/benchmarks/base64/benchmark_base64.cpp +0 -875
- package/deps/simdutf/benchmarks/base64/libbase64_spaces.h +0 -49
- package/deps/simdutf/benchmarks/base64/node_base64.h +0 -227
- package/deps/simdutf/benchmarks/base64/openssl3_base64.h +0 -334
- package/deps/simdutf/benchmarks/benchmark.cpp +0 -65
- package/deps/simdutf/benchmarks/benchmark_to_well_formed_utf16.cpp +0 -347
- package/deps/simdutf/benchmarks/competition/.clang-format-ignore +0 -5
- package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.cpp +0 -1276
- package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.h +0 -595
- package/deps/simdutf/benchmarks/competition/README.md +0 -7
- package/deps/simdutf/benchmarks/competition/hoehrmann/hoehrmann.h +0 -91
- package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16.h +0 -444
- package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16_tables.h +0 -13183
- package/deps/simdutf/benchmarks/competition/inoue2008/script.py +0 -73
- package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.cpp +0 -738
- package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.h +0 -293
- package/deps/simdutf/benchmarks/competition/u8u16/COPYRIGHT +0 -8
- package/deps/simdutf/benchmarks/competition/u8u16/Makefile +0 -44
- package/deps/simdutf/benchmarks/competition/u8u16/OSL3.0.txt +0 -169
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/BOM_Profiler.h +0 -148
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/i386_timer.h +0 -45
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/ppc_timer.c +0 -34
- package/deps/simdutf/benchmarks/competition/u8u16/README +0 -56
- package/deps/simdutf/benchmarks/competition/u8u16/config/config_defs.h +0 -43
- package/deps/simdutf/benchmarks/competition/u8u16/config/g4_config.h +0 -27
- package/deps/simdutf/benchmarks/competition/u8u16/config/mmx_config.h +0 -16
- package/deps/simdutf/benchmarks/competition/u8u16/config/p4_config.h +0 -18
- package/deps/simdutf/benchmarks/competition/u8u16/config/p4_ideal_config.h +0 -16
- package/deps/simdutf/benchmarks/competition/u8u16/config/spu_config.h +0 -28
- package/deps/simdutf/benchmarks/competition/u8u16/config/ssse3_config.h +0 -20
- package/deps/simdutf/benchmarks/competition/u8u16/iconv_u8u16.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/lib/altivec_simd.h +0 -440
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_basic_ops.py +0 -121
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_half_operand_versions.py +0 -158
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_test.py +0 -270
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd.h +0 -141
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_basic.h +0 -216
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_built_in.h +0 -119
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_modified.h +0 -2430
- package/deps/simdutf/benchmarks/competition/u8u16/lib/outline.txt +0 -39
- package/deps/simdutf/benchmarks/competition/u8u16/lib/spu_simd.h +0 -421
- package/deps/simdutf/benchmarks/competition/u8u16/lib/sse_simd.h +0 -836
- package/deps/simdutf/benchmarks/competition/u8u16/lib/stdint.h +0 -222
- package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_BE.c +0 -4
- package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_LE.c +0 -5
- package/deps/simdutf/benchmarks/competition/u8u16/proto/u8u16.py +0 -390
- package/deps/simdutf/benchmarks/competition/u8u16/src/Makefile +0 -18
- package/deps/simdutf/benchmarks/competition/u8u16/src/bytelex.h +0 -448
- package/deps/simdutf/benchmarks/competition/u8u16/src/charsets/ASCII_EBCDIC.h +0 -284
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.c +0 -1975
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.pdf +0 -0
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.w +0 -2263
- package/deps/simdutf/benchmarks/competition/u8u16/src/multiliteral.h +0 -239
- package/deps/simdutf/benchmarks/competition/u8u16/src/u8u16.c +0 -232
- package/deps/simdutf/benchmarks/competition/u8u16/src/x8x16.c +0 -194
- package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.c +0 -193
- package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.h +0 -167
- package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.c +0 -288
- package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.h +0 -117
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_g4.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_mmx.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4.c +0 -3
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4_ideal.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_spu.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_ssse3.c +0 -3
- package/deps/simdutf/benchmarks/competition/u8u16/x8x16_p4.c +0 -2
- package/deps/simdutf/benchmarks/competition/utf8lut/LICENSE +0 -23
- package/deps/simdutf/benchmarks/competition/utf8lut/data/test_minimal.txt +0 -44
- package/deps/simdutf/benchmarks/competition/utf8lut/readme.md +0 -106
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_corr_tests.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_example.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_file_conv.sh +0 -14
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_lib.sh +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_sample.sh +0 -8
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_corr_tests.cmd +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_example.cmd +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_file_conv.cmd +0 -14
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_lib.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_sample.cmd +0 -8
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_corr_tests.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_example.cmd +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_file_conv.cmd +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_lib.cmd +0 -10
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_sample.cmd +0 -9
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/html_table.py +0 -25
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/measure.py +0 -94
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/resize.py +0 -20
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_all.cmd +0 -2
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_interm.cmd +0 -1
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/CustomMemcpy.h +0 -75
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/PerfDefs.h +0 -47
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.cpp +0 -17
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.h +0 -76
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/AllProcessors.cpp +0 -35
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.cpp +0 -117
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.h +0 -210
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferDecoder.h +0 -158
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferEncoder.h +0 -104
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorPlugins.h +0 -334
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorSelector.h +0 -186
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.cpp +0 -140
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.h +0 -42
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderProcess.h +0 -100
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/Dfa.h +0 -57
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.cpp +0 -85
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.h +0 -27
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderProcess.h +0 -126
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/ProcessTrivial.h +0 -108
- package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.cpp +0 -139
- package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.h +0 -74
- package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.cpp +0 -65
- package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.h +0 -91
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/CorrectnessTests.cpp +0 -772
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/Example.cpp +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/FileConverter.cpp +0 -486
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/iconv_sample.c +0 -162
- package/deps/simdutf/benchmarks/competition/utf8lut/src/utf8lut.h +0 -15
- package/deps/simdutf/benchmarks/competition/utf8sse4/fromutf8-sse.cpp +0 -292
- package/deps/simdutf/benchmarks/competition/utfcpp/LICENSE +0 -23
- package/deps/simdutf/benchmarks/competition/utfcpp/README.md +0 -1503
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/checked.h +0 -335
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/core.h +0 -338
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp11.h +0 -103
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp17.h +0 -103
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/unchecked.h +0 -274
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8.h +0 -34
- package/deps/simdutf/benchmarks/dataset/README.md +0 -155
- package/deps/simdutf/benchmarks/dataset/emoji.txt +0 -204
- package/deps/simdutf/benchmarks/dataset/scripts/utf8type.py +0 -40
- package/deps/simdutf/benchmarks/dataset/wikipedia_mars/Makefile +0 -80
- package/deps/simdutf/benchmarks/dataset/wikipedia_mars/convert_to_utf6.py +0 -20
- package/deps/simdutf/benchmarks/find/CMakeLists.txt +0 -6
- package/deps/simdutf/benchmarks/find/findbenchmark.cpp +0 -63
- package/deps/simdutf/benchmarks/find/findbenchmarker.h +0 -46
- package/deps/simdutf/benchmarks/shortbench.cpp +0 -555
- package/deps/simdutf/benchmarks/src/CMakeLists.txt +0 -52
- package/deps/simdutf/benchmarks/src/apple_arm_events.h +0 -1104
- package/deps/simdutf/benchmarks/src/benchmark.cpp +0 -3899
- package/deps/simdutf/benchmarks/src/benchmark.h +0 -317
- package/deps/simdutf/benchmarks/src/benchmark_base.cpp +0 -144
- package/deps/simdutf/benchmarks/src/benchmark_base.h +0 -98
- package/deps/simdutf/benchmarks/src/cmdline.cpp +0 -176
- package/deps/simdutf/benchmarks/src/cmdline.h +0 -35
- package/deps/simdutf/benchmarks/src/event_counter.h +0 -162
- package/deps/simdutf/benchmarks/src/linux-perf-events.h +0 -104
- package/deps/simdutf/benchmarks/stream.cpp +0 -209
- package/deps/simdutf/benchmarks/threaded.cpp +0 -123
- package/deps/simdutf/cmake/CPM.cmake +0 -1363
- package/deps/simdutf/cmake/JoinPaths.cmake +0 -23
- package/deps/simdutf/cmake/add_cpp_test.cmake +0 -68
- package/deps/simdutf/cmake/simdutf-config.cmake.in +0 -2
- package/deps/simdutf/cmake/simdutf-flags.cmake +0 -26
- package/deps/simdutf/cmake/toolchains-ci/riscv64-linux-gnu.cmake +0 -4
- package/deps/simdutf/cmake/toolchains-dev/README.md +0 -32
- package/deps/simdutf/cmake/toolchains-dev/aarch64.cmake +0 -14
- package/deps/simdutf/cmake/toolchains-dev/loongarch64.cmake +0 -22
- package/deps/simdutf/cmake/toolchains-dev/powerpc64.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/powerpc64le.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/riscv64.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/rvv-spike.cmake +0 -38
- package/deps/simdutf/doc/avx512.png +0 -0
- package/deps/simdutf/doc/logo.png +0 -0
- package/deps/simdutf/doc/logo.svg +0 -165
- package/deps/simdutf/doc/node2023.png +0 -0
- package/deps/simdutf/doc/shortinput.md +0 -78
- package/deps/simdutf/doc/utf16utf8.png +0 -0
- package/deps/simdutf/doc/utf8utf16.png +0 -0
- package/deps/simdutf/doc/widelogo.png +0 -0
- package/deps/simdutf/doxygen.py +0 -50
- package/deps/simdutf/fuzz/.clang-format +0 -9
- package/deps/simdutf/fuzz/CMakeLists.txt +0 -45
- package/deps/simdutf/fuzz/README.md +0 -168
- package/deps/simdutf/fuzz/atomic_base64.cpp +0 -448
- package/deps/simdutf/fuzz/base64.cpp +0 -278
- package/deps/simdutf/fuzz/build.sh +0 -83
- package/deps/simdutf/fuzz/conversion.cpp +0 -669
- package/deps/simdutf/fuzz/helpers/.clang-format-ignore +0 -1
- package/deps/simdutf/fuzz/helpers/common.h +0 -135
- package/deps/simdutf/fuzz/helpers/nameof.hpp +0 -1258
- package/deps/simdutf/fuzz/main.cpp +0 -72
- package/deps/simdutf/fuzz/minimize_and_cleanse.sh +0 -87
- package/deps/simdutf/fuzz/misc.cpp +0 -216
- package/deps/simdutf/fuzz/random_fuzz.sh +0 -154
- package/deps/simdutf/fuzz/roundtrip.cpp +0 -588
- package/deps/simdutf/fuzz/safe_conversion.cpp +0 -104
- package/deps/simdutf/riscv/Dockerfile +0 -16
- package/deps/simdutf/riscv/README.md +0 -24
- package/deps/simdutf/riscv/remove-docker-station +0 -8
- package/deps/simdutf/riscv/run-docker-station +0 -31
- package/deps/simdutf/scripts/.flake8 +0 -2
- package/deps/simdutf/scripts/Makefile +0 -2
- package/deps/simdutf/scripts/README_ADD_FUNCTION.md +0 -49
- package/deps/simdutf/scripts/add_function.py +0 -330
- package/deps/simdutf/scripts/amalgamation_tests.py +0 -156
- package/deps/simdutf/scripts/base64/Makefile +0 -2
- package/deps/simdutf/scripts/base64/README.md +0 -2
- package/deps/simdutf/scripts/base64/avx512.py +0 -76
- package/deps/simdutf/scripts/base64/neon_decode.py +0 -143
- package/deps/simdutf/scripts/base64/neon_generate_lut.py +0 -101
- package/deps/simdutf/scripts/base64/sse.py +0 -252
- package/deps/simdutf/scripts/base64/sseregular.py +0 -160
- package/deps/simdutf/scripts/base64/sseurl.py +0 -283
- package/deps/simdutf/scripts/base64/table.py +0 -59
- package/deps/simdutf/scripts/base64bench_print.py +0 -145
- package/deps/simdutf/scripts/benchmark-all.py +0 -119
- package/deps/simdutf/scripts/benchmark_print.py +0 -324
- package/deps/simdutf/scripts/check_feature_macros.py +0 -156
- package/deps/simdutf/scripts/check_typos.sh +0 -13
- package/deps/simdutf/scripts/clang_format.sh +0 -35
- package/deps/simdutf/scripts/clang_format_docker.sh +0 -38
- package/deps/simdutf/scripts/common.py +0 -24
- package/deps/simdutf/scripts/compilation_benchmark.py +0 -55
- package/deps/simdutf/scripts/compile_many_variations.sh +0 -64
- package/deps/simdutf/scripts/create_latex_table.py +0 -62
- package/deps/simdutf/scripts/docker/Dockerfile +0 -14
- package/deps/simdutf/scripts/docker/Makefile +0 -9
- package/deps/simdutf/scripts/docker/README.md +0 -30
- package/deps/simdutf/scripts/docker/llvm.gpg +0 -0
- package/deps/simdutf/scripts/ppc64_convert_utf16_to_utf8.py +0 -155
- package/deps/simdutf/scripts/prepare_doxygen.sh +0 -21
- package/deps/simdutf/scripts/release.py +0 -197
- package/deps/simdutf/scripts/shortinputplots.py +0 -97
- package/deps/simdutf/scripts/sse_convert_utf16_to_utf8.py +0 -422
- package/deps/simdutf/scripts/sse_convert_utf32_to_utf16.py +0 -105
- package/deps/simdutf/scripts/sse_utf8_utf16_decode.py +0 -186
- package/deps/simdutf/scripts/sse_validate_utf16le_proof.py +0 -137
- package/deps/simdutf/scripts/sse_validate_utf16le_testcases.py +0 -129
- package/deps/simdutf/scripts/table.py +0 -207
- package/deps/simdutf/scripts/tests/new.txt +0 -33
- package/deps/simdutf/scripts/tests/old.txt +0 -33
- package/deps/simdutf/scripts/tests/results.txt +0 -272
- package/deps/simdutf/simdutf.pc.in +0 -11
- package/deps/simdutf/singleheader/.flake8 +0 -2
- package/deps/simdutf/singleheader/CMakeLists.txt +0 -64
- package/deps/simdutf/singleheader/README-dev.md +0 -81
- package/deps/simdutf/singleheader/README.md +0 -19
- package/deps/simdutf/singleheader/amalgamate.py +0 -513
- package/deps/simdutf/singleheader/amalgamation_demo.c +0 -59
- package/deps/simdutf/singleheader/amalgamation_demo.cpp +0 -54
- package/deps/simdutf/singleheader/test-features.py +0 -262
- package/deps/simdutf/src/CMakeLists.txt +0 -78
- package/deps/simdutf/tests/CMakeLists.txt +0 -483
- package/deps/simdutf/tests/atomic_base64_tests.cpp +0 -2845
- package/deps/simdutf/tests/base64_tests.cpp +0 -3617
- package/deps/simdutf/tests/basic_fuzzer.cpp +0 -805
- package/deps/simdutf/tests/bele_tests.cpp +0 -182
- package/deps/simdutf/tests/constexpr_base64_tests.cpp +0 -387
- package/deps/simdutf/tests/convert_latin1_to_utf16be_tests.cpp +0 -52
- package/deps/simdutf/tests/convert_latin1_to_utf16le_tests.cpp +0 -80
- package/deps/simdutf/tests/convert_latin1_to_utf32_tests.cpp +0 -66
- package/deps/simdutf/tests/convert_latin1_to_utf8_tests.cpp +0 -120
- package/deps/simdutf/tests/convert_utf16_to_utf8_safe_tests.cpp +0 -203
- package/deps/simdutf/tests/convert_utf16_to_utf8_with_replacement_tests.cpp +0 -276
- package/deps/simdutf/tests/convert_utf16be_to_latin1_tests.cpp +0 -109
- package/deps/simdutf/tests/convert_utf16be_to_latin1_tests_with_errors.cpp +0 -136
- package/deps/simdutf/tests/convert_utf16be_to_utf32_tests.cpp +0 -193
- package/deps/simdutf/tests/convert_utf16be_to_utf32_with_errors_tests.cpp +0 -381
- package/deps/simdutf/tests/convert_utf16be_to_utf8_tests.cpp +0 -259
- package/deps/simdutf/tests/convert_utf16be_to_utf8_with_errors_tests.cpp +0 -266
- package/deps/simdutf/tests/convert_utf16le_to_latin1_tests.cpp +0 -148
- package/deps/simdutf/tests/convert_utf16le_to_latin1_tests_with_errors.cpp +0 -176
- package/deps/simdutf/tests/convert_utf16le_to_utf32_tests.cpp +0 -213
- package/deps/simdutf/tests/convert_utf16le_to_utf32_with_errors_tests.cpp +0 -318
- package/deps/simdutf/tests/convert_utf16le_to_utf8_tests.cpp +0 -343
- package/deps/simdutf/tests/convert_utf16le_to_utf8_with_errors_tests.cpp +0 -271
- package/deps/simdutf/tests/convert_utf32_to_latin1_tests.cpp +0 -111
- package/deps/simdutf/tests/convert_utf32_to_latin1_with_errors_tests.cpp +0 -96
- package/deps/simdutf/tests/convert_utf32_to_utf16be_tests.cpp +0 -148
- package/deps/simdutf/tests/convert_utf32_to_utf16be_with_errors_tests.cpp +0 -192
- package/deps/simdutf/tests/convert_utf32_to_utf16le_tests.cpp +0 -166
- package/deps/simdutf/tests/convert_utf32_to_utf16le_with_errors_tests.cpp +0 -215
- package/deps/simdutf/tests/convert_utf32_to_utf8_tests.cpp +0 -181
- package/deps/simdutf/tests/convert_utf32_to_utf8_with_errors_tests.cpp +0 -261
- package/deps/simdutf/tests/convert_utf8_to_latin1_tests.cpp +0 -516
- package/deps/simdutf/tests/convert_utf8_to_latin1_with_errors_tests.cpp +0 -579
- package/deps/simdutf/tests/convert_utf8_to_utf16be_tests.cpp +0 -412
- package/deps/simdutf/tests/convert_utf8_to_utf16be_with_errors_tests.cpp +0 -480
- package/deps/simdutf/tests/convert_utf8_to_utf16le_tests.cpp +0 -671
- package/deps/simdutf/tests/convert_utf8_to_utf16le_with_errors_tests.cpp +0 -455
- package/deps/simdutf/tests/convert_utf8_to_utf32_tests.cpp +0 -1204
- package/deps/simdutf/tests/convert_utf8_to_utf32_with_errors_tests.cpp +0 -337
- package/deps/simdutf/tests/convert_valid_utf16be_to_latin1_tests.cpp +0 -37
- package/deps/simdutf/tests/convert_valid_utf16be_to_utf32_tests.cpp +0 -97
- package/deps/simdutf/tests/convert_valid_utf16be_to_utf8_tests.cpp +0 -126
- package/deps/simdutf/tests/convert_valid_utf16le_to_latin1_tests.cpp +0 -71
- package/deps/simdutf/tests/convert_valid_utf16le_to_utf32_tests.cpp +0 -122
- package/deps/simdutf/tests/convert_valid_utf16le_to_utf8_tests.cpp +0 -244
- package/deps/simdutf/tests/convert_valid_utf32_to_latin1_tests.cpp +0 -49
- package/deps/simdutf/tests/convert_valid_utf32_to_utf16be_tests.cpp +0 -92
- package/deps/simdutf/tests/convert_valid_utf32_to_utf16le_tests.cpp +0 -114
- package/deps/simdutf/tests/convert_valid_utf32_to_utf8_tests.cpp +0 -109
- package/deps/simdutf/tests/convert_valid_utf8_to_latin1_tests.cpp +0 -84
- package/deps/simdutf/tests/convert_valid_utf8_to_utf16be_tests.cpp +0 -124
- package/deps/simdutf/tests/convert_valid_utf8_to_utf16le_tests.cpp +0 -221
- package/deps/simdutf/tests/convert_valid_utf8_to_utf32_tests.cpp +0 -155
- package/deps/simdutf/tests/count_utf16be.cpp +0 -64
- package/deps/simdutf/tests/count_utf16le.cpp +0 -61
- package/deps/simdutf/tests/count_utf8.cpp +0 -87
- package/deps/simdutf/tests/detect_encodings_tests.cpp +0 -312
- package/deps/simdutf/tests/embed/valid_utf8.txt +0 -1
- package/deps/simdutf/tests/embed_tests.cpp +0 -22
- package/deps/simdutf/tests/find_tests.cpp +0 -77
- package/deps/simdutf/tests/fixed_string_tests.cpp +0 -153
- package/deps/simdutf/tests/helpers/CMakeLists.txt +0 -25
- package/deps/simdutf/tests/helpers/compiletime_conversions.h +0 -222
- package/deps/simdutf/tests/helpers/fixed_string.h +0 -267
- package/deps/simdutf/tests/helpers/random_int.cpp +0 -30
- package/deps/simdutf/tests/helpers/random_int.h +0 -39
- package/deps/simdutf/tests/helpers/random_utf16.cpp +0 -123
- package/deps/simdutf/tests/helpers/random_utf16.h +0 -52
- package/deps/simdutf/tests/helpers/random_utf32.cpp +0 -41
- package/deps/simdutf/tests/helpers/random_utf32.h +0 -40
- package/deps/simdutf/tests/helpers/random_utf8.cpp +0 -93
- package/deps/simdutf/tests/helpers/random_utf8.h +0 -36
- package/deps/simdutf/tests/helpers/test.cpp +0 -231
- package/deps/simdutf/tests/helpers/test.h +0 -193
- package/deps/simdutf/tests/helpers/transcode_test_base.cpp +0 -1257
- package/deps/simdutf/tests/helpers/transcode_test_base.h +0 -683
- package/deps/simdutf/tests/helpers/utf16.h +0 -27
- package/deps/simdutf/tests/installation_tests/find/CMakeLists.txt +0 -43
- package/deps/simdutf/tests/installation_tests/from_fetch/CMakeLists.txt +0 -47
- package/deps/simdutf/tests/internal_tests.cpp +0 -27
- package/deps/simdutf/tests/null_safety_tests.cpp +0 -94
- package/deps/simdutf/tests/random_fuzzer.cpp +0 -779
- package/deps/simdutf/tests/readme_tests.cpp +0 -274
- package/deps/simdutf/tests/reference/CMakeLists.txt +0 -23
- package/deps/simdutf/tests/reference/decode_utf16.h +0 -81
- package/deps/simdutf/tests/reference/decode_utf32.h +0 -47
- package/deps/simdutf/tests/reference/encode_latin1.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_latin1.h +0 -32
- package/deps/simdutf/tests/reference/encode_utf16.cpp +0 -49
- package/deps/simdutf/tests/reference/encode_utf16.h +0 -20
- package/deps/simdutf/tests/reference/encode_utf32.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_utf32.h +0 -36
- package/deps/simdutf/tests/reference/encode_utf8.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_utf8.h +0 -40
- package/deps/simdutf/tests/reference/validate_utf16.cpp +0 -60
- package/deps/simdutf/tests/reference/validate_utf16.h +0 -14
- package/deps/simdutf/tests/reference/validate_utf16_to_latin1.cpp +0 -35
- package/deps/simdutf/tests/reference/validate_utf16_to_latin1.h +0 -13
- package/deps/simdutf/tests/reference/validate_utf32.cpp +0 -27
- package/deps/simdutf/tests/reference/validate_utf32.h +0 -12
- package/deps/simdutf/tests/reference/validate_utf32_to_latin1.cpp +0 -27
- package/deps/simdutf/tests/reference/validate_utf32_to_latin1.h +0 -12
- package/deps/simdutf/tests/reference/validate_utf8.cpp +0 -82
- package/deps/simdutf/tests/reference/validate_utf8.h +0 -11
- package/deps/simdutf/tests/reference/validate_utf8_to_latin1.cpp +0 -43
- package/deps/simdutf/tests/reference/validate_utf8_to_latin1.h +0 -12
- package/deps/simdutf/tests/select_implementation.cpp +0 -43
- package/deps/simdutf/tests/simdutf_c_tests.cpp +0 -244
- package/deps/simdutf/tests/span_tests.cpp +0 -401
- package/deps/simdutf/tests/special_tests.cpp +0 -559
- package/deps/simdutf/tests/straight_c_test.c +0 -187
- package/deps/simdutf/tests/text_encoding_tests.cpp +0 -77
- package/deps/simdutf/tests/to_well_formed_utf16_tests.cpp +0 -377
- package/deps/simdutf/tests/utf8_length_from_utf16_tests.cpp +0 -202
- package/deps/simdutf/tests/validate_ascii_basic_tests.cpp +0 -165
- package/deps/simdutf/tests/validate_ascii_with_errors_tests.cpp +0 -77
- package/deps/simdutf/tests/validate_utf16be_basic_tests.cpp +0 -175
- package/deps/simdutf/tests/validate_utf16be_with_errors_tests.cpp +0 -188
- package/deps/simdutf/tests/validate_utf16le_basic_tests.cpp +0 -268
- package/deps/simdutf/tests/validate_utf16le_with_errors_tests.cpp +0 -274
- package/deps/simdutf/tests/validate_utf32_basic_tests.cpp +0 -92
- package/deps/simdutf/tests/validate_utf32_with_errors_tests.cpp +0 -114
- package/deps/simdutf/tests/validate_utf8_basic_tests.cpp +0 -178
- package/deps/simdutf/tests/validate_utf8_brute_force_tests.cpp +0 -88
- package/deps/simdutf/tests/validate_utf8_puzzler_tests.cpp +0 -33
- package/deps/simdutf/tests/validate_utf8_with_errors_tests.cpp +0 -228
- package/deps/simdutf/tools/CMakeLists.txt +0 -85
- package/deps/simdutf/tools/fastbase64.cpp +0 -250
- package/deps/simdutf/tools/sutf.cpp +0 -556
- package/deps/simdutf/tools/sutf.h +0 -40
- package/lib/tsconfig.tsbuildinfo +0 -1
|
@@ -1,239 +0,0 @@
|
|
|
1
|
-
/* multiliteral.h - XML Multicharacter Recognizers.
|
|
2
|
-
Copyright (c) 2007, 2008, Robert D. Cameron.
|
|
3
|
-
Licensed to the public under the Open Software License 3.0.
|
|
4
|
-
Licensed to International Characters, Inc., under the Academic
|
|
5
|
-
Free License 3.0.
|
|
6
|
-
|
|
7
|
-
This file provides a library of routines for the efficient recognition
|
|
8
|
-
of particular XML multicharacter sequences. Sequences of length 2 are
|
|
9
|
-
compared as 16 bit integers, sequences of length 3 or 4 are compared
|
|
10
|
-
as 32 bit integers and other sequences of length up to 8 are compared as
|
|
11
|
-
64 bit integers. The integer value for each XML multicharacter sequence
|
|
12
|
-
is determined as a compile-time constant for optimal efficiency.
|
|
13
|
-
|
|
14
|
-
All functions are declared inline; there is no corresponding multiliteral.c
|
|
15
|
-
file required. */
|
|
16
|
-
|
|
17
|
-
#ifndef MULTILITERAL_H
|
|
18
|
-
#define MULTILITERAL_H
|
|
19
|
-
|
|
20
|
-
#include <assert.h>
|
|
21
|
-
#include <stdint.h>
|
|
22
|
-
#include "xmldecl.h"
|
|
23
|
-
#include "charsets/ASCII_EBCDIC.h"
|
|
24
|
-
|
|
25
|
-
#if BYTE_ORDER == BIG_ENDIAN
|
|
26
|
-
const int LOW_BYTE_SHIFT = 8;
|
|
27
|
-
const int HIGH_BYTE_SHIFT = 0;
|
|
28
|
-
#endif
|
|
29
|
-
#if BYTE_ORDER == LITTLE_ENDIAN
|
|
30
|
-
const int LOW_BYTE_SHIFT = 0;
|
|
31
|
-
const int HIGH_BYTE_SHIFT = 8;
|
|
32
|
-
#endif
|
|
33
|
-
|
|
34
|
-
/*
|
|
35
|
-
Helper metafunctions. Given 2, 4 or 8 characters comprising a sequence,
|
|
36
|
-
the c2int16, c4int32, and c8int64 functions determine the corresponding
|
|
37
|
-
16, 32 or 64 bit integer value. These are template metafunctions that
|
|
38
|
-
must be instantiated with constant arguments to be applied at compile time.
|
|
39
|
-
The functions may be instantiated for ASCII or EBCDIC based byte
|
|
40
|
-
sequences.
|
|
41
|
-
For example, c2int16<ASCII, '<', '/'>::value produces the compile
|
|
42
|
-
time constant for the 16-bit value of an ASCII-based byte sequence
|
|
43
|
-
of the XML end tag opening delimiter.
|
|
44
|
-
*/
|
|
45
|
-
|
|
46
|
-
template <unsigned char byte1, unsigned char byte2>
|
|
47
|
-
struct b2int16 {
|
|
48
|
-
static uint16_t const value =
|
|
49
|
-
(((uint16_t) byte1) << LOW_BYTE_SHIFT) +
|
|
50
|
-
(((uint16_t) byte2) << HIGH_BYTE_SHIFT);
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2>
|
|
54
|
-
struct c2int16 {
|
|
55
|
-
static uint16_t const value = b2int16<Ord<C,c1>::value, Ord<C,c2>::value>::value;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
59
|
-
unsigned char c3, unsigned char c4>
|
|
60
|
-
struct c4int32 {
|
|
61
|
-
static uint32_t const value =
|
|
62
|
-
(((uint32_t) c2int16<C,c1,c2>::value) << (2 * LOW_BYTE_SHIFT)) +
|
|
63
|
-
(((uint32_t) c2int16<C,c3,c4>::value) << (2 * HIGH_BYTE_SHIFT));
|
|
64
|
-
};
|
|
65
|
-
|
|
66
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
67
|
-
unsigned char c3, unsigned char c4,
|
|
68
|
-
unsigned char c5, unsigned char c6,
|
|
69
|
-
unsigned char c7, unsigned char c8>
|
|
70
|
-
struct c8int64 {
|
|
71
|
-
static uint64_t const value =
|
|
72
|
-
(((uint64_t) c4int32<C, c1, c2, c3, c4>::value) << (4 * LOW_BYTE_SHIFT)) +
|
|
73
|
-
(((uint64_t) c4int32<C, c5, c6, c7, c8>::value) << (4 * HIGH_BYTE_SHIFT));
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
/* Specialized helpers for 3, 5, 6, and 7 character combinations. */
|
|
78
|
-
|
|
79
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
80
|
-
unsigned char c3>
|
|
81
|
-
struct c3int32 {
|
|
82
|
-
static uint32_t const value = c4int32<C, c1, c2, c3, 0>::value;
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
86
|
-
unsigned char c3, unsigned char c4,
|
|
87
|
-
unsigned char c5>
|
|
88
|
-
struct c5int64 {
|
|
89
|
-
static uint64_t const value = c8int64<C, c1, c2, c3, c4, c5, 0, 0, 0>::value;
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
93
|
-
unsigned char c3, unsigned char c4,
|
|
94
|
-
unsigned char c5, unsigned char c6>
|
|
95
|
-
struct c6int64 {
|
|
96
|
-
static uint64_t const value = c8int64<C, c1, c2, c3, c4, c5, c6, 0, 0>::value;
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
100
|
-
unsigned char c3, unsigned char c4,
|
|
101
|
-
unsigned char c5, unsigned char c6,
|
|
102
|
-
unsigned char c7>
|
|
103
|
-
struct c7int64 {
|
|
104
|
-
static uint64_t const value = c8int64<C, c1, c2, c3, c4, c5, c6, c7, 0>::value;
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
/*
|
|
109
|
-
A second set of helper functions determines 16, 32, or 64 bit integer
|
|
110
|
-
values from character arrays.
|
|
111
|
-
Precondition: the character array is allocated with at least the
|
|
112
|
-
number of required characters in each case. */
|
|
113
|
-
static inline uint16_t s2int16(unsigned char s[]) {
|
|
114
|
-
return * ((uint16_t *) s);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
static inline uint32_t s4int32(unsigned char s[]) {
|
|
118
|
-
return * ((uint32_t *) s);
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
static inline uint64_t s8int64(unsigned char s[]) {
|
|
122
|
-
return * ((uint64_t *) s);
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
static inline uint32_t s3int32(unsigned char s[]) {
|
|
126
|
-
return s4int32(s) & (0xFFFFFF << LOW_BYTE_SHIFT);
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
static inline uint64_t s5int64(unsigned char s[]) {
|
|
130
|
-
return s8int64(s) & (0xFFFFFFFFFFULL << (3 * LOW_BYTE_SHIFT));
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
static inline uint64_t s6int64(unsigned char s[]) {
|
|
134
|
-
return s8int64(s) & (0xFFFFFFFFFFFFULL << (2 * LOW_BYTE_SHIFT));
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
static inline uint64_t s7int64(unsigned char s[]) {
|
|
138
|
-
return s8int64(s) & (0xFFFFFFFFFFFFFFULL << LOW_BYTE_SHIFT);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2>
|
|
142
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
143
|
-
const uint16_t lc = c2int16<C, UC2lc<c1>::value, UC2lc<c2>::value>::value;
|
|
144
|
-
const uint16_t UC = c2int16<C, lc2UC<c1>::value, lc2UC<c2>::value>::value;
|
|
145
|
-
const uint16_t case_mask = lc ^ UC;
|
|
146
|
-
const uint16_t canon = lc & ~case_mask;
|
|
147
|
-
return (s2int16(s) & ~case_mask) == canon;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2, unsigned char c3>
|
|
151
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
152
|
-
const uint32_t lc = c3int32<C, UC2lc<c1>::value, UC2lc<c2>::value, UC2lc<c3>::value>::value;
|
|
153
|
-
const uint32_t UC = c3int32<C, lc2UC<c1>::value, lc2UC<c2>::value, lc2UC<c3>::value>::value;
|
|
154
|
-
const uint32_t case_mask = lc ^ UC;
|
|
155
|
-
const uint32_t canon = lc & ~case_mask;
|
|
156
|
-
return (s3int32(s) & ~case_mask) == canon;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
160
|
-
unsigned char c3, unsigned char c4>
|
|
161
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
162
|
-
const uint32_t lc = c4int32<C, UC2lc<c1>::value, UC2lc<c2>::value,
|
|
163
|
-
UC2lc<c3>::value, UC2lc<c4>::value>::value;
|
|
164
|
-
const uint32_t UC = c4int32<C, lc2UC<c1>::value, lc2UC<c2>::value,
|
|
165
|
-
lc2UC<c3>::value, lc2UC<c4>::value>::value;
|
|
166
|
-
const uint32_t case_mask = lc ^ UC;
|
|
167
|
-
const uint32_t canon = lc & ~case_mask;
|
|
168
|
-
return (s4int32(s) & ~case_mask) == canon;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
172
|
-
unsigned char c3, unsigned char c4,
|
|
173
|
-
unsigned char c5>
|
|
174
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
175
|
-
const uint64_t lc = c5int64<C, UC2lc<c1>::value, UC2lc<c2>::value,
|
|
176
|
-
UC2lc<c3>::value, UC2lc<c4>::value,
|
|
177
|
-
UC2lc<c5>::value>::value;
|
|
178
|
-
const uint64_t UC = c5int64<C, lc2UC<c1>::value, lc2UC<c2>::value,
|
|
179
|
-
lc2UC<c3>::value, lc2UC<c4>::value,
|
|
180
|
-
lc2UC<c5>::value>::value;
|
|
181
|
-
const uint64_t case_mask = lc ^ UC;
|
|
182
|
-
const uint64_t canon = lc & ~case_mask;
|
|
183
|
-
return (s5int64(s) & ~case_mask) == canon;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
187
|
-
unsigned char c3, unsigned char c4,
|
|
188
|
-
unsigned char c5, unsigned char c6>
|
|
189
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
190
|
-
const uint64_t lc = c6int64<C, UC2lc<c1>::value, UC2lc<c2>::value,
|
|
191
|
-
UC2lc<c3>::value, UC2lc<c4>::value,
|
|
192
|
-
UC2lc<c5>::value, UC2lc<c6>::value>::value;
|
|
193
|
-
const uint64_t UC = c6int64<C, lc2UC<c1>::value, lc2UC<c2>::value,
|
|
194
|
-
lc2UC<c3>::value, lc2UC<c4>::value,
|
|
195
|
-
lc2UC<c5>::value, lc2UC<c6>::value>::value;
|
|
196
|
-
const uint64_t case_mask = lc ^ UC;
|
|
197
|
-
const uint64_t canon = lc & ~case_mask;
|
|
198
|
-
return (s6int64(s) & ~case_mask) == canon;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
202
|
-
unsigned char c3, unsigned char c4,
|
|
203
|
-
unsigned char c5, unsigned char c6,
|
|
204
|
-
unsigned char c7>
|
|
205
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
206
|
-
const uint64_t lc = c7int64<C, UC2lc<c1>::value, UC2lc<c2>::value,
|
|
207
|
-
UC2lc<c3>::value, UC2lc<c4>::value,
|
|
208
|
-
UC2lc<c5>::value, UC2lc<c6>::value,
|
|
209
|
-
UC2lc<c7>::value>::value;
|
|
210
|
-
const uint64_t UC = c7int64<C, lc2UC<c1>::value, lc2UC<c2>::value,
|
|
211
|
-
lc2UC<c3>::value, lc2UC<c4>::value,
|
|
212
|
-
lc2UC<c5>::value, lc2UC<c6>::value,
|
|
213
|
-
lc2UC<c7>::value>::value;
|
|
214
|
-
const uint64_t case_mask = lc ^ UC;
|
|
215
|
-
const uint64_t canon = lc & ~case_mask;
|
|
216
|
-
return (s7int64(s) & ~case_mask) == canon;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
template <CodeUnit_Base C, unsigned char c1, unsigned char c2,
|
|
220
|
-
unsigned char c3, unsigned char c4,
|
|
221
|
-
unsigned char c5, unsigned char c6,
|
|
222
|
-
unsigned char c7, unsigned char c8>
|
|
223
|
-
static inline bool caseless_comp(unsigned char s[]) {
|
|
224
|
-
const uint64_t lc = c8int64<C, UC2lc<c1>::value, UC2lc<c2>::value,
|
|
225
|
-
UC2lc<c3>::value, UC2lc<c4>::value,
|
|
226
|
-
UC2lc<c5>::value, UC2lc<c6>::value,
|
|
227
|
-
UC2lc<c7>::value, UC2lc<c8>::value>::value;
|
|
228
|
-
const uint64_t UC = c8int64<C, lc2UC<c1>::value, lc2UC<c2>::value,
|
|
229
|
-
lc2UC<c3>::value, lc2UC<c4>::value,
|
|
230
|
-
lc2UC<c5>::value, lc2UC<c6>::value,
|
|
231
|
-
lc2UC<c7>::value, lc2UC<c8>::value>::value;
|
|
232
|
-
const uint64_t case_mask = lc ^ UC;
|
|
233
|
-
const uint64_t canon = lc & ~case_mask;
|
|
234
|
-
return (s8int64(s) & ~case_mask) == canon;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
#endif
|
|
@@ -1,232 +0,0 @@
|
|
|
1
|
-
#include <stdio.h>
|
|
2
|
-
#include <stdlib.h>
|
|
3
|
-
#include <errno.h>
|
|
4
|
-
#include <stdint.h>
|
|
5
|
-
#ifndef UNICODE_CONVERT
|
|
6
|
-
#ifndef _MSC_VER
|
|
7
|
-
#include <iconv.h>
|
|
8
|
-
#endif
|
|
9
|
-
#endif
|
|
10
|
-
|
|
11
|
-
#ifdef _MSC_VER
|
|
12
|
-
//#undef BUFFER_PROFILING
|
|
13
|
-
#undef STD_ICONV
|
|
14
|
-
#endif
|
|
15
|
-
// Profiling
|
|
16
|
-
|
|
17
|
-
#ifdef BUFFER_PROFILING
|
|
18
|
-
#include "../Profiling/BOM_Profiler.h"
|
|
19
|
-
BOM_Table * transcode_timer;
|
|
20
|
-
#endif
|
|
21
|
-
|
|
22
|
-
/* Counting the number of blocks classified by the
|
|
23
|
-
maxiumum UTF-8 sequence length within the block. */
|
|
24
|
-
#ifdef BLOCK_COUNTING
|
|
25
|
-
int block_counts[4] = {0,0,0,0};
|
|
26
|
-
#endif
|
|
27
|
-
|
|
28
|
-
#define BUFFER_SIZE 2048
|
|
29
|
-
#define U16BUFFER_UNITS (BUFFER_SIZE + 16)
|
|
30
|
-
|
|
31
|
-
#ifdef UNICODE_ORG_CONVERT
|
|
32
|
-
#undef STD_ICONV
|
|
33
|
-
#undef FAST_U8U16
|
|
34
|
-
#define error_in_result(rslt) rslt != conversionOK
|
|
35
|
-
#define illegal_sequence_error(rslt) rslt == sourceIllegal
|
|
36
|
-
#define incomplete_sequence_error(rslt) rslt == sourceExhausted
|
|
37
|
-
#endif
|
|
38
|
-
|
|
39
|
-
#ifndef UNICODE_ORG_CONVERT
|
|
40
|
-
#define error_in_result(rslt) rslt == (size_t) -1
|
|
41
|
-
#define illegal_sequence_error(rslt) u8u16_errno == EILSEQ
|
|
42
|
-
#define incomplete_sequence_error(rslt) u8u16_errno == EINVAL
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
#ifdef STD_ICONV
|
|
46
|
-
#undef FAST_U8U16
|
|
47
|
-
#endif
|
|
48
|
-
#ifndef STD_ICONV
|
|
49
|
-
#define FAST_U8U16 1
|
|
50
|
-
#endif
|
|
51
|
-
#endif
|
|
52
|
-
|
|
53
|
-
// Include the conversion routines.
|
|
54
|
-
#ifdef UNICODE_ORG_CONVERT
|
|
55
|
-
//#include "Unicode.org/ConvertUTF.h"
|
|
56
|
-
#include "Unicode.org/ConvertUTF.c"
|
|
57
|
-
#endif
|
|
58
|
-
#ifdef FAST_U8U16
|
|
59
|
-
#include "libu8u16.c"
|
|
60
|
-
#endif
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
void do_UTF8toUTF16(FILE *infile, FILE *outfile) {
|
|
64
|
-
|
|
65
|
-
#ifdef __GNUC__
|
|
66
|
-
unsigned char UTF8_buffer[BUFFER_SIZE] __attribute__((aligned(16)));
|
|
67
|
-
#endif
|
|
68
|
-
#ifdef _MSC_VER
|
|
69
|
-
__declspec(align(16)) unsigned char UTF8_buffer[BUFFER_SIZE];
|
|
70
|
-
#endif
|
|
71
|
-
unsigned short UTF16_buffer[U16BUFFER_UNITS];
|
|
72
|
-
unsigned char * srcbuf_ptr = &UTF8_buffer[0];
|
|
73
|
-
unsigned short * trgtbuf_ptr = &UTF16_buffer[0];
|
|
74
|
-
size_t inbytes_left, outbytes_left;
|
|
75
|
-
int file_position = 0;
|
|
76
|
-
|
|
77
|
-
intptr_t chars_read, i, UTF16_chars;
|
|
78
|
-
int u8u16_errno;
|
|
79
|
-
|
|
80
|
-
#ifdef UNICODE_ORG_CONVERT
|
|
81
|
-
ConversionResult rslt;
|
|
82
|
-
#endif
|
|
83
|
-
#ifdef STD_ICONV
|
|
84
|
-
iconv_t cd = iconv_open("UTF-16BE", "UTF-8");
|
|
85
|
-
size_t rslt;
|
|
86
|
-
#endif
|
|
87
|
-
#ifdef FAST_U8U16
|
|
88
|
-
size_t rslt;
|
|
89
|
-
#endif
|
|
90
|
-
|
|
91
|
-
chars_read = fread(&UTF8_buffer, 1, BUFFER_SIZE, infile);
|
|
92
|
-
|
|
93
|
-
while (chars_read > 0) {
|
|
94
|
-
#ifdef BUFFER_PROFILING
|
|
95
|
-
start_BOM_interval(transcode_timer);
|
|
96
|
-
#endif
|
|
97
|
-
srcbuf_ptr = &UTF8_buffer[0];
|
|
98
|
-
trgtbuf_ptr = &UTF16_buffer[0];
|
|
99
|
-
inbytes_left = chars_read;
|
|
100
|
-
outbytes_left = U16BUFFER_UNITS*2;
|
|
101
|
-
#ifdef STD_ICONV
|
|
102
|
-
rslt = iconv(cd,
|
|
103
|
-
(char **) &srcbuf_ptr,
|
|
104
|
-
&inbytes_left,
|
|
105
|
-
(char **) &trgtbuf_ptr,
|
|
106
|
-
&outbytes_left);
|
|
107
|
-
u8u16_errno = errno;
|
|
108
|
-
#endif
|
|
109
|
-
#ifdef UNICODE_ORG_CONVERT
|
|
110
|
-
rslt = ConvertUTF8toUTF16((const UTF8**) &srcbuf_ptr,
|
|
111
|
-
srcbuf_ptr + chars_read,
|
|
112
|
-
&trgtbuf_ptr,
|
|
113
|
-
&UTF16_buffer[BUFFER_SIZE],
|
|
114
|
-
strictConversion);
|
|
115
|
-
inbytes_left = chars_read - (srcbuf_ptr - &UTF8_buffer[0]);
|
|
116
|
-
#endif
|
|
117
|
-
#ifdef FAST_U8U16
|
|
118
|
-
#ifndef BUFFERED_U8U16
|
|
119
|
-
rslt = u8u16((char **) &srcbuf_ptr,
|
|
120
|
-
&inbytes_left,
|
|
121
|
-
(char **) &trgtbuf_ptr,
|
|
122
|
-
&outbytes_left);
|
|
123
|
-
#endif
|
|
124
|
-
#ifdef BUFFERED_U8U16
|
|
125
|
-
rslt = buffered_u8u16((char **) &srcbuf_ptr,
|
|
126
|
-
&inbytes_left,
|
|
127
|
-
(char **) &trgtbuf_ptr,
|
|
128
|
-
&outbytes_left);
|
|
129
|
-
#endif
|
|
130
|
-
u8u16_errno = errno;
|
|
131
|
-
#endif
|
|
132
|
-
|
|
133
|
-
#ifdef BUFFER_PROFILING
|
|
134
|
-
end_BOM_interval(transcode_timer, chars_read - inbytes_left);
|
|
135
|
-
#endif
|
|
136
|
-
file_position += chars_read - inbytes_left;
|
|
137
|
-
UTF16_chars = ((intptr_t) trgtbuf_ptr - (intptr_t) &UTF16_buffer[0])/2;
|
|
138
|
-
fwrite(&UTF16_buffer, 2, UTF16_chars, outfile);
|
|
139
|
-
if (error_in_result(rslt)) {
|
|
140
|
-
if (illegal_sequence_error(rslt)) {
|
|
141
|
-
int pos = 0;
|
|
142
|
-
fprintf(stderr, "Illegal UTF-8 sequence at position %i in source.\n", file_position);
|
|
143
|
-
#ifdef DEBUG_ERROR
|
|
144
|
-
for (pos =0; (pos < 5) && (pos < inbytes_left); pos++) {
|
|
145
|
-
fprintf(stderr, " %02X", (unsigned char) srcbuf_ptr[pos]);
|
|
146
|
-
}
|
|
147
|
-
fprintf(stderr, "\n");
|
|
148
|
-
#endif
|
|
149
|
-
fclose(infile);
|
|
150
|
-
fclose(outfile);
|
|
151
|
-
exit(-1);
|
|
152
|
-
}
|
|
153
|
-
if (!incomplete_sequence_error(rslt)) {
|
|
154
|
-
fprintf(stderr, "Unknown error %i at position %i in source.\n", errno, file_position);
|
|
155
|
-
fclose(infile);
|
|
156
|
-
fclose(outfile);
|
|
157
|
-
exit(-1);
|
|
158
|
-
}
|
|
159
|
-
// errno == EINVAL or rslt == sourceExhausted
|
|
160
|
-
// Incomplete sequence at end of input buffer.
|
|
161
|
-
if (chars_read < BUFFER_SIZE) {
|
|
162
|
-
int pos = 0;
|
|
163
|
-
fprintf(stderr, "EOF with incomplete UTF-8 sequence at position %i in source.\n", file_position);
|
|
164
|
-
#ifdef DEBUG_ERROR
|
|
165
|
-
for (pos =0; (pos < 5) && (pos < inbytes_left); pos++) {
|
|
166
|
-
fprintf(stderr, " %02X", (unsigned char) srcbuf_ptr[pos]);
|
|
167
|
-
}
|
|
168
|
-
fprintf(stderr, "\n");
|
|
169
|
-
#endif
|
|
170
|
-
fclose(infile);
|
|
171
|
-
fclose(outfile);
|
|
172
|
-
exit(-1);
|
|
173
|
-
}
|
|
174
|
-
// Move unprocessed characters to beginning.
|
|
175
|
-
for (i = 0; i < inbytes_left; i++) {
|
|
176
|
-
UTF8_buffer[i] = UTF8_buffer[chars_read - inbytes_left + i];
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
chars_read = fread(&UTF8_buffer[inbytes_left], 1, BUFFER_SIZE-inbytes_left, infile);
|
|
181
|
-
chars_read += inbytes_left;
|
|
182
|
-
}
|
|
183
|
-
#ifdef STD_ICONV
|
|
184
|
-
iconv_close(cd);
|
|
185
|
-
#endif
|
|
186
|
-
fclose(infile);
|
|
187
|
-
fclose(outfile);
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
int
|
|
194
|
-
main(int argc, char * argv[]) {
|
|
195
|
-
if (argc < 2) {
|
|
196
|
-
printf("Usage: %s <filename.u8> [<filename.u16>].\n", argv[0]);
|
|
197
|
-
exit(-1);
|
|
198
|
-
}
|
|
199
|
-
char * filename = argv[1];
|
|
200
|
-
#ifdef BUFFER_PROFILING
|
|
201
|
-
transcode_timer = init_BOM_timer();
|
|
202
|
-
#endif
|
|
203
|
-
FILE *infile, *outfile;
|
|
204
|
-
infile = fopen(filename, "rb");
|
|
205
|
-
if (!infile) {
|
|
206
|
-
fprintf(stderr, "Error: cannot open %s for input.\n", filename);
|
|
207
|
-
exit(-1);
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
if (argc < 3) outfile = stdout;
|
|
211
|
-
else {
|
|
212
|
-
outfile = fopen(argv[2], "wb");
|
|
213
|
-
if (!outfile) {
|
|
214
|
-
fprintf(stderr, "Error: cannot open %s for writing.\n", argv[2]);
|
|
215
|
-
exit(-1);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
do_UTF8toUTF16(infile, outfile);
|
|
220
|
-
|
|
221
|
-
#ifdef BUFFER_PROFILING
|
|
222
|
-
printf("Buffer conversion timing.\n");
|
|
223
|
-
dump_BOM_table(transcode_timer);
|
|
224
|
-
#endif
|
|
225
|
-
#ifdef BLOCK_COUNTING
|
|
226
|
-
printf("%i bytes in pure ASCII blocks.\n", block_counts[0]);
|
|
227
|
-
printf("%i bytes in blocks confined to two-byte subplane.\n", block_counts[1]);
|
|
228
|
-
printf("%i bytes in blocks confined to basic multilingual plane.\n", block_counts[2]);
|
|
229
|
-
printf("%i bytes in blocks containing 4-byte UTF-8 sequences.\n", block_counts[3]);
|
|
230
|
-
#endif
|
|
231
|
-
return(0);
|
|
232
|
-
}
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
#include <stdio.h>
|
|
2
|
-
#include <stdlib.h>
|
|
3
|
-
#include <errno.h>
|
|
4
|
-
#include <stdint.h>
|
|
5
|
-
#ifndef _MSC_VER
|
|
6
|
-
#include <iconv.h>
|
|
7
|
-
#endif
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
#include "xmldecl.h"
|
|
11
|
-
|
|
12
|
-
// Profiling
|
|
13
|
-
|
|
14
|
-
#ifdef BUFFER_PROFILING
|
|
15
|
-
#include "../Profiling/BOM_Profiler.h"
|
|
16
|
-
BOM_Table * transcode_timer;
|
|
17
|
-
#endif
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
#define BUFFER_SIZE 2048
|
|
21
|
-
|
|
22
|
-
#define error_in_result(rslt) rslt == (size_t) -1
|
|
23
|
-
#define illegal_sequence_error(rslt) errno == EILSEQ
|
|
24
|
-
#define incomplete_sequence_error(rslt) errno == EINVAL
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
#define FAST_U8U16 1
|
|
28
|
-
|
|
29
|
-
// Include the conversion routines.
|
|
30
|
-
#include "libu8u16.c"
|
|
31
|
-
|
|
32
|
-
#include "xml_error.c"
|
|
33
|
-
#include "xmldecl.c"
|
|
34
|
-
|
|
35
|
-
unsigned char xml_decl_u16[12] =
|
|
36
|
-
{'\0', '<', '\0', '?', '\0', 'x', '\0', 'm', '\0', 'l', '\0', ' '};
|
|
37
|
-
unsigned char version[28] =
|
|
38
|
-
{'\0', 'v', '\0', 'e', '\0', 'r', '\0', 's', '\0', 'i', '\0', 'o', '\0', 'n',
|
|
39
|
-
'\0', '=', '\0', '"', '\0', '1', '\0', '.', '\0', '0', '\0', '"', '\0', ' '};
|
|
40
|
-
unsigned char encoding[34] =
|
|
41
|
-
{'\0', 'e', '\0', 'n', '\0', 'c', '\0', 'o', '\0', 'd',
|
|
42
|
-
'\0', 'i', '\0', 'n', '\0', 'g', '\0', '=', '\0', '"',
|
|
43
|
-
'\0', 'u', '\0', 't', '\0', 'f', '\0', '-', '\0', '1', '\0', '6', '\0', '"'};
|
|
44
|
-
unsigned char standalone[34] =
|
|
45
|
-
{'\0', ' ', '\0', 's', '\0', 't', '\0', 'a', '\0', 'n',
|
|
46
|
-
'\0', 'd', '\0', 'a', '\0', 'l', '\0', 'o', '\0', 'n',
|
|
47
|
-
'\0', 'e', '\0', '=', '\0', '"', '\0', 'y', '\0', 'e', '\0', 's', '\0', '"'};
|
|
48
|
-
unsigned char xml_decl_end[4] = {'\0', '?', '\0', '>'};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
void do_UTF8toUTF16(FILE *infile, FILE *outfile) {
|
|
53
|
-
|
|
54
|
-
#ifdef __GNUC__
|
|
55
|
-
unsigned char UTF8_buffer[BUFFER_SIZE] __attribute__((aligned(16)));
|
|
56
|
-
#endif
|
|
57
|
-
#ifdef _MSC_VER
|
|
58
|
-
__declspec(align(16)) unsigned char UTF8_buffer[BUFFER_SIZE];
|
|
59
|
-
#endif
|
|
60
|
-
unsigned short UTF16_buffer[BUFFER_SIZE];
|
|
61
|
-
unsigned char * srcbuf_ptr = &UTF8_buffer[0];
|
|
62
|
-
unsigned short * trgtbuf_ptr = &UTF16_buffer[0];
|
|
63
|
-
size_t inbytes_left, outbytes_left;
|
|
64
|
-
int file_position = 0;
|
|
65
|
-
|
|
66
|
-
intptr_t chars_read, i, UTF16_chars;
|
|
67
|
-
|
|
68
|
-
size_t rslt;
|
|
69
|
-
|
|
70
|
-
chars_read = fread(&UTF8_buffer, 1, BUFFER_SIZE, infile);
|
|
71
|
-
|
|
72
|
-
if (chars_read < 4) {
|
|
73
|
-
fprintf(stderr, "Input document empty or too short\n");
|
|
74
|
-
exit(-1);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
Entity_Info * e = new Entity_Info;
|
|
78
|
-
e->AnalyzeSignature(UTF8_buffer);
|
|
79
|
-
XML_Decl_Parser decl_parser((unsigned char *)&UTF8_buffer);
|
|
80
|
-
|
|
81
|
-
decl_parser.ReadXMLorTextDecl(*e);
|
|
82
|
-
|
|
83
|
-
if (e->content_start != 0) {
|
|
84
|
-
memmove(&UTF8_buffer[0], &UTF8_buffer[e->content_start], chars_read - e->content_start);
|
|
85
|
-
if (chars_read == BUFFER_SIZE) {
|
|
86
|
-
chars_read = BUFFER_SIZE - e->content_start +
|
|
87
|
-
fread(&UTF8_buffer[BUFFER_SIZE-e->content_start], 1, e->content_start, infile);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
/* Write UTF-16 BOM */
|
|
91
|
-
fputc(0xFE, outfile);
|
|
92
|
-
fputc(0xFF, outfile);
|
|
93
|
-
|
|
94
|
-
if (e->content_start > e->BOM_units) {
|
|
95
|
-
// Duplicate original XML/text declaration with encoding="UTF-16"
|
|
96
|
-
fwrite(&xml_decl_u16[0], 1, 12, outfile);
|
|
97
|
-
if (e->version == XML_1_0)
|
|
98
|
-
fwrite(&version[0], 1, 28, outfile);
|
|
99
|
-
else if (e->version == XML_1_0) {
|
|
100
|
-
fwrite(&version[0], 1, 23, outfile);
|
|
101
|
-
fputc('1', outfile);
|
|
102
|
-
fwrite(&version[24], 1, 4, outfile);
|
|
103
|
-
}
|
|
104
|
-
fwrite(&encoding[0], 1, 34, outfile);
|
|
105
|
-
if (e->standalone == Standalone_yes)
|
|
106
|
-
fwrite(&standalone[0], 1, 34, outfile);
|
|
107
|
-
else if (e->standalone == Standalone_no) {
|
|
108
|
-
fwrite(&standalone[0], 1, 27, outfile);
|
|
109
|
-
fputc('n', outfile);
|
|
110
|
-
fputc('\0', outfile);
|
|
111
|
-
fputc('o', outfile);
|
|
112
|
-
fwrite(&standalone[32], 1, 2, outfile);
|
|
113
|
-
}
|
|
114
|
-
fwrite(&xml_decl_end[0], 1, 4, outfile);
|
|
115
|
-
}
|
|
116
|
-
while (chars_read > 0) {
|
|
117
|
-
srcbuf_ptr = &UTF8_buffer[0];
|
|
118
|
-
trgtbuf_ptr = &UTF16_buffer[0];
|
|
119
|
-
inbytes_left = chars_read;
|
|
120
|
-
outbytes_left = BUFFER_SIZE*2;
|
|
121
|
-
rslt = u8u16((char **) &srcbuf_ptr,
|
|
122
|
-
&inbytes_left,
|
|
123
|
-
(char **) &trgtbuf_ptr,
|
|
124
|
-
&outbytes_left);
|
|
125
|
-
|
|
126
|
-
file_position += chars_read - inbytes_left;
|
|
127
|
-
UTF16_chars = ((intptr_t) trgtbuf_ptr - (intptr_t) &UTF16_buffer[0])/2;
|
|
128
|
-
fwrite(&UTF16_buffer, 2, UTF16_chars, outfile);
|
|
129
|
-
if (error_in_result(rslt)) {
|
|
130
|
-
if (illegal_sequence_error(rslt)) {
|
|
131
|
-
int pos = 0;
|
|
132
|
-
fprintf(stderr, "Illegal UTF-8 sequence at position %i in source.\n", file_position);
|
|
133
|
-
fclose(infile);
|
|
134
|
-
fclose(outfile);
|
|
135
|
-
exit(-1);
|
|
136
|
-
}
|
|
137
|
-
if (!incomplete_sequence_error(rslt)) {
|
|
138
|
-
fprintf(stderr, "Unknown error %i at position %i in source.\n", errno, file_position);
|
|
139
|
-
fclose(infile);
|
|
140
|
-
fclose(outfile);
|
|
141
|
-
exit(-1);
|
|
142
|
-
}
|
|
143
|
-
// errno == EINVAL or rslt == sourceExhausted
|
|
144
|
-
// Incomplete sequence at end of input buffer.
|
|
145
|
-
if (chars_read < BUFFER_SIZE) {
|
|
146
|
-
int pos = 0;
|
|
147
|
-
fprintf(stderr, "EOF with incomplete UTF-8 sequence at position %i in source.\n", file_position);
|
|
148
|
-
fclose(infile);
|
|
149
|
-
fclose(outfile);
|
|
150
|
-
exit(-1);
|
|
151
|
-
}
|
|
152
|
-
// Move unprocessed characters to beginning.
|
|
153
|
-
for (i = 0; i < inbytes_left; i++) {
|
|
154
|
-
UTF8_buffer[i] = UTF8_buffer[chars_read - inbytes_left + i];
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
}
|
|
158
|
-
chars_read = fread(&UTF8_buffer[inbytes_left], 1, BUFFER_SIZE-inbytes_left, infile);
|
|
159
|
-
chars_read += inbytes_left;
|
|
160
|
-
}
|
|
161
|
-
fclose(infile);
|
|
162
|
-
fclose(outfile);
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
int
|
|
169
|
-
main(int argc, char * argv[]) {
|
|
170
|
-
if (argc < 2) {
|
|
171
|
-
printf("Usage: %s <filename> [<filename.u16>].\n", argv[0]);
|
|
172
|
-
exit(-1);
|
|
173
|
-
}
|
|
174
|
-
char * filename = argv[1];
|
|
175
|
-
FILE *infile, *outfile;
|
|
176
|
-
infile = fopen(filename, "rb");
|
|
177
|
-
if (!infile) {
|
|
178
|
-
fprintf(stderr, "Error: cannot open %s for input.\n", filename);
|
|
179
|
-
exit(-1);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
if (argc < 3) outfile = stdout;
|
|
183
|
-
else {
|
|
184
|
-
outfile = fopen(argv[2], "wb");
|
|
185
|
-
if (!outfile) {
|
|
186
|
-
fprintf(stderr, "Error: cannot open %s for writing.\n", argv[2]);
|
|
187
|
-
exit(-1);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
do_UTF8toUTF16(infile, outfile);
|
|
192
|
-
|
|
193
|
-
return(0);
|
|
194
|
-
}
|