From 5782099106f3e43f964d926b4523a1c01b4855e2 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Fri, 11 Sep 2020 17:51:10 +0200 Subject: [PATCH] LibWeb: Add basic support for boolean IDL attributes :^) --- Libraries/LibWeb/CodeGenerators/WrapperGenerator.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Libraries/LibWeb/CodeGenerators/WrapperGenerator.cpp b/Libraries/LibWeb/CodeGenerators/WrapperGenerator.cpp index b47b4c9363..570089bc28 100644 --- a/Libraries/LibWeb/CodeGenerators/WrapperGenerator.cpp +++ b/Libraries/LibWeb/CodeGenerators/WrapperGenerator.cpp @@ -541,6 +541,8 @@ void generate_implementation(const IDL::Interface& interface) out() << " auto " << cpp_name << " = " << js_name << js_suffix << ".to_double(interpreter);"; out() << " if (interpreter.exception())"; generate_return(); + } else if (parameter.type.name == "boolean") { + out() << " auto " << cpp_name << " = " << js_name << js_suffix << ".to_boolean();"; } else { dbg() << "Unimplemented JS-to-C++ conversion: " << parameter.type.name; ASSERT_NOT_REACHED(); @@ -589,6 +591,8 @@ void generate_implementation(const IDL::Interface& interface) out() << " return JS::Value(retval);"; } else if (return_type.name == "Uint8ClampedArray") { out() << " return retval;"; + } else if (return_type.name == "boolean") { + out() << " return JS::Value(retval);"; } else { out() << " return wrap(global_object, const_cast<" << return_type.name << "&>(*retval));"; }