From ef252d63c89569f16bed07c05e1c1b5a9b5c274e Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Wed, 23 Apr 2025 12:02:41 +0100 Subject: [PATCH] IDLGenerators: Add support for default values on bool dictionary members --- .../LibWeb/BindingsGenerator/IDLGenerators.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp b/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp index 98cb8031a18..77fd065e818 100644 --- a/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp +++ b/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp @@ -1651,8 +1651,13 @@ static void generate_to_cpp(SourceGenerator& generator, ParameterType& parameter } else if (optional_default_value->to_number().has_value() || optional_default_value->to_number().has_value()) { union_generator.append(R"~~~( @union_type@ @cpp_name@ = @js_name@@js_suffix@.is_undefined() ? @parameter.optional_default_value@ : TRY(@js_name@@js_suffix@_to_variant(@js_name@@js_suffix@)); +)~~~"); + } else if (optional_default_value == "true"sv || optional_default_value == "false"sv) { + union_generator.append(R"~~~( + @union_type@ @cpp_name@ = @js_name@@js_suffix@.is_undefined() ? @parameter.optional_default_value@ : TRY(@js_name@@js_suffix@_to_variant(@js_name@@js_suffix@)); )~~~"); } else { + dbgln("Don't know how to handle optional default value of `{}`", *optional_default_value); TODO(); } }