X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/81345200c95645a1b0d2635520f96ad55dfde63f..ed1e77d3adeb83d26fd1dfb16dd84cabdcefd250:/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp diff --git a/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp b/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp index 6406994..02df572 100644 --- a/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp +++ b/replay/scripts/tests/expected/generate-enum-encoding-helpers.json-TestReplayInputs.cpp @@ -32,9 +32,9 @@ #if ENABLE(WEB_REPLAY) #include "InternalNamespaceImplIncludeDummy.h" +#include "NondeterministicInput.h" +#include "PlatformMouseEvent.h" #include -#include -#include namespace Test { SavedMouseButton::SavedMouseButton(MouseButton button) @@ -49,95 +49,141 @@ SavedMouseButton::~SavedMouseButton() } // namespace Test namespace JSC { -const AtomicString& InputTraits::type() +const String& InputTraits::type() { - static NeverDestroyed type("SavedMouseButton", AtomicString::ConstructFromLiteral); + static NeverDestroyed type(ASCIILiteral("SavedMouseButton")); return type; } void InputTraits::encode(EncodedValue& encodedValue, const Test::SavedMouseButton& input) { - encodedValue.put(ASCIILiteral("button"), input.button()); + encodedValue.put(ASCIILiteral("button"), input.button()); } bool InputTraits::decode(EncodedValue& encodedValue, std::unique_ptr& input) { - WebCore::MouseButton button; - if (!encodedValue.get(ASCIILiteral("button"), button)) + Test::MouseButton button; + if (!encodedValue.get(ASCIILiteral("button"), button)) return false; input = std::make_unique(button); return true; } -EncodedValue EncodingTraits::encodeValue(const InputQueue& enumValue) +EncodedValue EncodingTraits::encodeValue(const Test::InputQueue& enumValue) { switch (enumValue) { - case InputQueue::EventLoopInput: return EncodedValue::createString("EventLoopInput"); - case InputQueue::LoaderMemoizedData: return EncodedValue::createString("LoaderMemoizedData"); - case InputQueue::ScriptMemoizedData: return EncodedValue::createString("ScriptMemoizedData"); + case Test::InputQueue::EventLoopInput: return EncodedValue::createString("EventLoopInput"); + case Test::InputQueue::LoaderMemoizedData: return EncodedValue::createString("LoaderMemoizedData"); + case Test::InputQueue::ScriptMemoizedData: return EncodedValue::createString("ScriptMemoizedData"); default: ASSERT_NOT_REACHED(); return EncodedValue::createString("Error!"); } } -bool EncodingTraits::decodeValue(EncodedValue& encodedValue, InputQueue& enumValue) +bool EncodingTraits::decodeValue(EncodedValue& encodedValue, Test::InputQueue& enumValue) { String enumString = encodedValue.convertTo(); if (enumString == "EventLoopInput") { - enumValue = InputQueue::EventLoopInput; + enumValue = Test::InputQueue::EventLoopInput; return true; } if (enumString == "LoaderMemoizedData") { - enumValue = InputQueue::LoaderMemoizedData; + enumValue = Test::InputQueue::LoaderMemoizedData; return true; } if (enumString == "ScriptMemoizedData") { - enumValue = InputQueue::ScriptMemoizedData; + enumValue = Test::InputQueue::ScriptMemoizedData; return true; } return false; } -EncodedValue EncodingTraits::encodeValue(const WebCore::MouseButton& enumValue) +EncodedValue EncodingTraits::encodeValue(const Test::MouseButton& enumValue) { EncodedValue encodedValue = EncodedValue::createArray(); - if (enumValue & WebCore::NoButton) { + if (enumValue & Test::NoButton) { encodedValue.append(ASCIILiteral("NoButton")); - if (enumValue == WebCore::NoButton) + if (enumValue == Test::NoButton) return encodedValue; } - if (enumValue & WebCore::LeftButton) { + if (enumValue & Test::LeftButton) { encodedValue.append(ASCIILiteral("LeftButton")); - if (enumValue == WebCore::LeftButton) + if (enumValue == Test::LeftButton) return encodedValue; } - if (enumValue & WebCore::MiddleButton) { + if (enumValue & Test::MiddleButton) { encodedValue.append(ASCIILiteral("MiddleButton")); - if (enumValue == WebCore::MiddleButton) + if (enumValue == Test::MiddleButton) return encodedValue; } - if (enumValue & WebCore::RightButton) { + if (enumValue & Test::RightButton) { encodedValue.append(ASCIILiteral("RightButton")); - if (enumValue == WebCore::RightButton) + if (enumValue == Test::RightButton) return encodedValue; } return encodedValue; } -bool EncodingTraits::decodeValue(EncodedValue& encodedValue, WebCore::MouseButton& enumValue) +bool EncodingTraits::decodeValue(EncodedValue& encodedValue, Test::MouseButton& enumValue) { Vector enumStrings; if (!EncodingTraits>::decodeValue(encodedValue, enumStrings)) return false; - for (String enumString : enumStrings) { + for (const String& enumString : enumStrings) { if (enumString == "NoButton") - enumValue = static_cast(enumValue | WebCore::NoButton); - if (enumString == "LeftButton") - enumValue = static_cast(enumValue | WebCore::LeftButton); - if (enumString == "MiddleButton") - enumValue = static_cast(enumValue | WebCore::MiddleButton); - if (enumString == "RightButton") - enumValue = static_cast(enumValue | WebCore::RightButton); + enumValue = static_cast(enumValue | Test::NoButton); + else if (enumString == "LeftButton") + enumValue = static_cast(enumValue | Test::LeftButton); + else if (enumString == "MiddleButton") + enumValue = static_cast(enumValue | Test::MiddleButton); + else if (enumString == "RightButton") + enumValue = static_cast(enumValue | Test::RightButton); + } + + return true; +} + +EncodedValue EncodingTraits::encodeValue(const Test::PlatformEvent::Type& enumValue) +{ + EncodedValue encodedValue = EncodedValue::createArray(); + if (enumValue & Test::PlatformEvent::Mouse) { + encodedValue.append(ASCIILiteral("Mouse")); + if (enumValue == Test::PlatformEvent::Mouse) + return encodedValue; + } + if (enumValue & Test::PlatformEvent::Key) { + encodedValue.append(ASCIILiteral("Key")); + if (enumValue == Test::PlatformEvent::Key) + return encodedValue; + } + if (enumValue & Test::PlatformEvent::Touch) { + encodedValue.append(ASCIILiteral("Touch")); + if (enumValue == Test::PlatformEvent::Touch) + return encodedValue; + } + if (enumValue & Test::PlatformEvent::Wheel) { + encodedValue.append(ASCIILiteral("Wheel")); + if (enumValue == Test::PlatformEvent::Wheel) + return encodedValue; + } + return encodedValue; +} + +bool EncodingTraits::decodeValue(EncodedValue& encodedValue, Test::PlatformEvent::Type& enumValue) +{ + Vector enumStrings; + if (!EncodingTraits>::decodeValue(encodedValue, enumStrings)) + return false; + + for (const String& enumString : enumStrings) { + if (enumString == "Mouse") + enumValue = static_cast(enumValue | Test::PlatformEvent::Mouse); + else if (enumString == "Key") + enumValue = static_cast(enumValue | Test::PlatformEvent::Key); + else if (enumString == "Touch") + enumValue = static_cast(enumValue | Test::PlatformEvent::Touch); + else if (enumString == "Wheel") + enumValue = static_cast(enumValue | Test::PlatformEvent::Wheel); } return true;