From 59203c63bb777a3bacec32fb8830fba33540e809 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 12 Jun 2024 07:35:29 +0200 Subject: Adding upstream version 127.0. Signed-off-by: Daniel Baumann --- dom/canvas/WebGLQueueParamTraits.h | 41 ++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 24 deletions(-) (limited to 'dom/canvas/WebGLQueueParamTraits.h') diff --git a/dom/canvas/WebGLQueueParamTraits.h b/dom/canvas/WebGLQueueParamTraits.h index 3c74f08750..136316433f 100644 --- a/dom/canvas/WebGLQueueParamTraits.h +++ b/dom/canvas/WebGLQueueParamTraits.h @@ -61,25 +61,6 @@ struct QueueParamTraits> : QueueParamTraits_TiedFields> {}; // --------------------------------------------------------------------- // Enums! -inline constexpr bool IsEnumCase(const dom::WebGLPowerPreference raw) { - switch (raw) { - case dom::WebGLPowerPreference::Default: - case dom::WebGLPowerPreference::Low_power: - case dom::WebGLPowerPreference::High_performance: - return true; - } - return false; -} - -inline constexpr bool IsEnumCase(const dom::PredefinedColorSpace raw) { - switch (raw) { - case dom::PredefinedColorSpace::Srgb: - case dom::PredefinedColorSpace::Display_p3: - return true; - } - return false; -} - inline constexpr bool IsEnumCase(const webgl::AttribBaseType raw) { switch (raw) { case webgl::AttribBaseType::Boolean: @@ -91,16 +72,14 @@ inline constexpr bool IsEnumCase(const webgl::AttribBaseType raw) { return false; } -static_assert(IsEnumCase(dom::WebGLPowerPreference(2))); -static_assert(!IsEnumCase(dom::WebGLPowerPreference(3))); -static_assert(!IsEnumCase(dom::WebGLPowerPreference(5))); +static_assert(IsEnumCase(webgl::AttribBaseType(3))); +static_assert(!IsEnumCase(webgl::AttribBaseType(4))); +static_assert(!IsEnumCase(webgl::AttribBaseType(5))); #define USE_IS_ENUM_CASE(T) \ template <> \ struct QueueParamTraits : QueueParamTraits_IsEnumCase {}; -USE_IS_ENUM_CASE(dom::WebGLPowerPreference) -USE_IS_ENUM_CASE(dom::PredefinedColorSpace) USE_IS_ENUM_CASE(webgl::AttribBaseType) USE_IS_ENUM_CASE(webgl::ProvokingVertex) @@ -283,6 +262,20 @@ struct QueueParamTraits : public ContiguousEnumSerializerInclusive< gfxAlphaType, gfxAlphaType::Opaque, gfxAlphaType::NonPremult> {}; +// - + +template +using WebIDLEnumQueueSerializer = + ContiguousEnumSerializerInclusive::min, + ContiguousEnumValues::max>; + +template <> +struct QueueParamTraits + : public WebIDLEnumQueueSerializer {}; +template <> +struct QueueParamTraits + : public WebIDLEnumQueueSerializer {}; + } // namespace webgl } // namespace mozilla -- cgit v1.2.3