diff options
Diffstat (limited to 'vendor/libghostty-vt/src/simd/base64.cpp')
| -rw-r--r-- | vendor/libghostty-vt/src/simd/base64.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/vendor/libghostty-vt/src/simd/base64.cpp b/vendor/libghostty-vt/src/simd/base64.cpp new file mode 100644 index 00000000..63f26b50 --- /dev/null +++ b/vendor/libghostty-vt/src/simd/base64.cpp @@ -0,0 +1,20 @@ +#include <simdutf.h> + +extern "C" { + +size_t ghostty_simd_base64_max_length(const char* input, size_t length) { + return simdutf::maximal_binary_length_from_base64(input, length); +} + +size_t ghostty_simd_base64_decode(const char* input, + size_t length, + char* output) { + simdutf::result r = simdutf::base64_to_binary(input, length, output); + if (r.error) { + return -1; + } + + return r.count; +} + +} // extern "C" |
