diff --git a/Userland/Libraries/LibWeb/Bindings/CSSNamespace.cpp b/Userland/Libraries/LibWeb/Bindings/CSSNamespace.cpp index 6bc57f8bb3..56507ed776 100644 --- a/Userland/Libraries/LibWeb/Bindings/CSSNamespace.cpp +++ b/Userland/Libraries/LibWeb/Bindings/CSSNamespace.cpp @@ -26,40 +26,35 @@ void CSSNamespace::initialize(JS::GlobalObject& global_object) { Object::initialize(global_object); u8 attr = JS::Attribute::Enumerable; - define_old_native_function("escape", escape, 1, attr); - define_old_native_function("supports", supports, 2, attr); + define_native_function("escape", escape, 1, attr); + define_native_function("supports", supports, 2, attr); } // https://www.w3.org/TR/cssom-1/#dom-css-escape -JS_DEFINE_OLD_NATIVE_FUNCTION(CSSNamespace::escape) +JS_DEFINE_NATIVE_FUNCTION(CSSNamespace::escape) { - if (!vm.argument_count()) { - vm.throw_exception(global_object, JS::ErrorType::BadArgCountAtLeastOne, "CSS.escape"); - return {}; - } - - auto identifier = TRY_OR_DISCARD(vm.argument(0).to_string(global_object)); + if (!vm.argument_count()) + return vm.throw_completion(global_object, JS::ErrorType::BadArgCountAtLeastOne, "CSS.escape"); + auto identifier = TRY(vm.argument(0).to_string(global_object)); return JS::js_string(vm, Web::CSS::serialize_an_identifier(identifier)); } // https://www.w3.org/TR/css-conditional-3/#dom-css-supports -JS_DEFINE_OLD_NATIVE_FUNCTION(CSSNamespace::supports) +JS_DEFINE_NATIVE_FUNCTION(CSSNamespace::supports) { - if (!vm.argument_count()) { - vm.throw_exception(global_object, JS::ErrorType::BadArgCountAtLeastOne, "CSS.supports"); - return {}; - } + if (!vm.argument_count()) + return vm.throw_completion(global_object, JS::ErrorType::BadArgCountAtLeastOne, "CSS.supports"); if (vm.argument_count() >= 2) { // When the supports(property, value) method is invoked with two arguments property and value: - auto property_name = TRY_OR_DISCARD(vm.argument(0).to_string(global_object)); + auto property_name = TRY(vm.argument(0).to_string(global_object)); // If property is an ASCII case-insensitive match for any defined CSS property that the UA supports, // and value successfully parses according to that property’s grammar, return true. auto property = CSS::property_id_from_string(property_name); if (property != CSS::PropertyID::Invalid) { - auto value_string = TRY_OR_DISCARD(vm.argument(1).to_string(global_object)); + auto value_string = TRY(vm.argument(1).to_string(global_object)); if (parse_css_value({}, value_string, property)) return JS::Value(true); } @@ -73,7 +68,7 @@ JS_DEFINE_OLD_NATIVE_FUNCTION(CSSNamespace::supports) return JS::Value(false); } else { // When the supports(conditionText) method is invoked with a single conditionText argument: - auto supports_text = TRY_OR_DISCARD(vm.argument(0).to_string(global_object)); + auto supports_text = TRY(vm.argument(0).to_string(global_object)); // If conditionText, parsed and evaluated as a , would return true, return true. if (auto supports = parse_css_supports({}, supports_text); supports && supports->matches()) diff --git a/Userland/Libraries/LibWeb/Bindings/CSSNamespace.h b/Userland/Libraries/LibWeb/Bindings/CSSNamespace.h index 2a0942448a..2791c54580 100644 --- a/Userland/Libraries/LibWeb/Bindings/CSSNamespace.h +++ b/Userland/Libraries/LibWeb/Bindings/CSSNamespace.h @@ -21,8 +21,8 @@ public: virtual ~CSSNamespace() override; private: - JS_DECLARE_OLD_NATIVE_FUNCTION(escape); - JS_DECLARE_OLD_NATIVE_FUNCTION(supports); + JS_DECLARE_NATIVE_FUNCTION(escape); + JS_DECLARE_NATIVE_FUNCTION(supports); }; }