/* This file is part of the WebKit open source project. This file has been generated by generate-bindings.pl. DO NOT MODIFY! This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "config.h" #if ENABLE(WEB_CRYPTO) #include "JSCryptoKeyUsage.h" #include #include #include #include namespace WebCore { using namespace JSC; String convertEnumerationToString(CryptoKeyUsage enumerationValue) { static const NeverDestroyed values[] = { MAKE_STATIC_STRING_IMPL("encrypt"), MAKE_STATIC_STRING_IMPL("decrypt"), MAKE_STATIC_STRING_IMPL("sign"), MAKE_STATIC_STRING_IMPL("verify"), MAKE_STATIC_STRING_IMPL("deriveKey"), MAKE_STATIC_STRING_IMPL("deriveBits"), MAKE_STATIC_STRING_IMPL("wrapKey"), MAKE_STATIC_STRING_IMPL("unwrapKey"), }; static_assert(static_cast(CryptoKeyUsage::Encrypt) == 0, "CryptoKeyUsage::Encrypt is not 0 as expected"); static_assert(static_cast(CryptoKeyUsage::Decrypt) == 1, "CryptoKeyUsage::Decrypt is not 1 as expected"); static_assert(static_cast(CryptoKeyUsage::Sign) == 2, "CryptoKeyUsage::Sign is not 2 as expected"); static_assert(static_cast(CryptoKeyUsage::Verify) == 3, "CryptoKeyUsage::Verify is not 3 as expected"); static_assert(static_cast(CryptoKeyUsage::DeriveKey) == 4, "CryptoKeyUsage::DeriveKey is not 4 as expected"); static_assert(static_cast(CryptoKeyUsage::DeriveBits) == 5, "CryptoKeyUsage::DeriveBits is not 5 as expected"); static_assert(static_cast(CryptoKeyUsage::WrapKey) == 6, "CryptoKeyUsage::WrapKey is not 6 as expected"); static_assert(static_cast(CryptoKeyUsage::UnwrapKey) == 7, "CryptoKeyUsage::UnwrapKey is not 7 as expected"); ASSERT(static_cast(enumerationValue) < WTF_ARRAY_LENGTH(values)); return values[static_cast(enumerationValue)]; } template<> JSString* convertEnumerationToJS(JSGlobalObject& lexicalGlobalObject, CryptoKeyUsage enumerationValue) { return jsStringWithCache(lexicalGlobalObject.vm(), convertEnumerationToString(enumerationValue)); } template<> std::optional parseEnumeration(JSGlobalObject& lexicalGlobalObject, JSValue value) { auto stringValue = value.toWTFString(&lexicalGlobalObject); static constexpr std::pair mappings[] = { { "decrypt", CryptoKeyUsage::Decrypt }, { "deriveBits", CryptoKeyUsage::DeriveBits }, { "deriveKey", CryptoKeyUsage::DeriveKey }, { "encrypt", CryptoKeyUsage::Encrypt }, { "sign", CryptoKeyUsage::Sign }, { "unwrapKey", CryptoKeyUsage::UnwrapKey }, { "verify", CryptoKeyUsage::Verify }, { "wrapKey", CryptoKeyUsage::WrapKey }, }; static constexpr SortedArrayMap enumerationMapping { mappings }; if (auto* enumerationValue = enumerationMapping.tryGet(stringValue); LIKELY(enumerationValue)) return *enumerationValue; return std::nullopt; } template<> const char* expectedEnumerationValues() { return "\"encrypt\", \"decrypt\", \"sign\", \"verify\", \"deriveKey\", \"deriveBits\", \"wrapKey\", \"unwrapKey\""; } } // namespace WebCore #endif // ENABLE(WEB_CRYPTO) ption value='dylan/fix-module-field-in-exports'>dylan/fix-module-field-in-exports Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2023-10-12TweaksGravatar Colin McDonnell 1-2/+2
2023-10-12Fix structGravatar Colin McDonnell 1-1/+1
2023-10-12Clean up, implement warn_on_unrecognized_flagGravatar Colin McDonnell 4-26/+40
2023-10-12WIPGravatar Colin McDonnell 4-77/+14
2023-10-12WIPGravatar Colin McDonnell 5-347/+353
2023-10-12WIPGravatar Colin McDonnell 5-209/+446
2023-10-12WIPGravatar Colin McDonnell 2-24/+106
2023-10-12Improve helptextGravatar Colin McDonnell 1-55/+83
2023-10-12WIPGravatar Colin McDonnell 3-49/+147
2023-10-12WIPGravatar Colin McDonnell 2-0/+19
2023-10-12fix install testGravatar Dylan Conway 2-6/+8
2023-10-12fix editing package json when adding github dependency (#6432)Gravatar Dylan Conway 5-14/+146
* fix package name added to package json * check for github tag * remove alloc * some tests * fix test
2023-10-12Update installation.mdGravatar Colin McDonnell 1-8/+14
2023-10-12Update installation.mdGravatar Colin McDonnell 1-3/+3
2023-10-12fix(install): re-evaluate overrides when removedbun-v1.0.6Gravatar dave caruso 3-3/+45
2023-10-12chore: add missing ending quote (#6436)Gravatar Luna 1-1/+1
2023-10-12feat(install): support npm overrides/yarn resolutions, one level deep only ↵Gravatar dave caruso 7-31/+640
(#6435) * disable zig fmt on generated ResolvedSourceTag.zig * overrides * it works * ok * a --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
2023-10-11fix #6416 (#6430)Gravatar Dylan Conway 2-1/+132
* make sure latest is checked after prerelease * test and fix * test for when latest matches prerelease
2023-10-11Bump WebKitGravatar Jarred Sumner 9-29/+29
2023-10-11Bump!Gravatar Jarred Sumner 1-1/+1
2023-10-11Update JSCUSocketsLoopIntegration.cppGravatar Dylan Conway 1-2/+2
2023-10-11Update installation.mdGravatar Colin McDonnell 1-10/+7