LibJS+LibWeb: Add JS::Object::fast_is<T> helpers for some LibWeb types

These are slightly unfortunate as we're crossing the library boundary,
but there's precedent with Object::is_dom_node(), and these are just
knocking down a few more items that were showing up in profiles.
This commit is contained in:
Andreas Kling 2025-04-18 10:31:28 +02:00 committed by Andreas Kling
commit d8188c9f14
Notes: github-actions[bot] 2025-04-18 12:47:12 +00:00
5 changed files with 24 additions and 0 deletions

View file

@ -190,6 +190,11 @@ public:
void define_native_accessor(Realm&, PropertyKey const&, ESCAPING Function<ThrowCompletionOr<Value>(VM&)> getter, ESCAPING Function<ThrowCompletionOr<Value>(VM&)> setter, PropertyAttributes attributes);
virtual bool is_dom_node() const { return false; }
virtual bool is_dom_event() const { return false; }
virtual bool is_html_window() const { return false; }
virtual bool is_html_window_proxy() const { return false; }
virtual bool is_html_location() const { return false; }
virtual bool is_function() const { return false; }
virtual bool is_promise() const { return false; }
virtual bool is_error() const { return false; }