LibGC+Everywhere: Factor out a LibGC from LibJS

Resulting in a massive rename across almost everywhere! Alongside the
namespace change, we now have the following names:

 * JS::NonnullGCPtr -> GC::Ref
 * JS::GCPtr -> GC::Ptr
 * JS::HeapFunction -> GC::Function
 * JS::CellImpl -> GC::Cell
 * JS::Handle -> GC::Root
This commit is contained in:
Shannon Booth 2024-11-15 04:01:23 +13:00 committed by Andreas Kling
parent ce23efc5f6
commit f87041bf3a
Notes: github-actions[bot] 2024-11-15 13:50:17 +00:00
1722 changed files with 9939 additions and 9906 deletions

View file

@ -19,7 +19,7 @@ class CSSStyleDeclaration
: public Bindings::PlatformObject
, public Bindings::GeneratedCSSStyleProperties {
WEB_PLATFORM_OBJECT(CSSStyleDeclaration, Bindings::PlatformObject);
JS_DECLARE_ALLOCATOR(CSSStyleDeclaration);
GC_DECLARE_ALLOCATOR(CSSStyleDeclaration);
public:
virtual ~CSSStyleDeclaration() = default;
@ -47,7 +47,7 @@ public:
virtual String serialized() const = 0;
virtual JS::GCPtr<CSSRule> parent_rule() const;
virtual GC::Ptr<CSSRule> parent_rule() const;
protected:
explicit CSSStyleDeclaration(JS::Realm&);
@ -61,12 +61,12 @@ private:
class PropertyOwningCSSStyleDeclaration : public CSSStyleDeclaration {
WEB_PLATFORM_OBJECT(PropertyOwningCSSStyleDeclaration, CSSStyleDeclaration);
JS_DECLARE_ALLOCATOR(PropertyOwningCSSStyleDeclaration);
GC_DECLARE_ALLOCATOR(PropertyOwningCSSStyleDeclaration);
friend class ElementInlineCSSStyleDeclaration;
public:
[[nodiscard]] static JS::NonnullGCPtr<PropertyOwningCSSStyleDeclaration>
[[nodiscard]] static GC::Ref<PropertyOwningCSSStyleDeclaration>
create(JS::Realm&, Vector<StyleProperty>, HashMap<FlyString, StyleProperty> custom_properties);
virtual ~PropertyOwningCSSStyleDeclaration() override = default;
@ -87,8 +87,8 @@ public:
virtual String serialized() const final override;
virtual WebIDL::ExceptionOr<void> set_css_text(StringView) override;
virtual JS::GCPtr<CSSRule> parent_rule() const override;
void set_parent_rule(JS::NonnullGCPtr<CSSRule>);
virtual GC::Ptr<CSSRule> parent_rule() const override;
void set_parent_rule(GC::Ref<CSSRule>);
protected:
PropertyOwningCSSStyleDeclaration(JS::Realm&, Vector<StyleProperty>, HashMap<FlyString, StyleProperty>);
@ -103,17 +103,17 @@ private:
virtual void visit_edges(Cell::Visitor&) override;
JS::GCPtr<CSSRule> m_parent_rule;
GC::Ptr<CSSRule> m_parent_rule;
Vector<StyleProperty> m_properties;
HashMap<FlyString, StyleProperty> m_custom_properties;
};
class ElementInlineCSSStyleDeclaration final : public PropertyOwningCSSStyleDeclaration {
WEB_PLATFORM_OBJECT(ElementInlineCSSStyleDeclaration, PropertyOwningCSSStyleDeclaration);
JS_DECLARE_ALLOCATOR(ElementInlineCSSStyleDeclaration);
GC_DECLARE_ALLOCATOR(ElementInlineCSSStyleDeclaration);
public:
[[nodiscard]] static JS::NonnullGCPtr<ElementInlineCSSStyleDeclaration> create(DOM::Element&, Vector<StyleProperty>, HashMap<FlyString, StyleProperty> custom_properties);
[[nodiscard]] static GC::Ref<ElementInlineCSSStyleDeclaration> create(DOM::Element&, Vector<StyleProperty>, HashMap<FlyString, StyleProperty> custom_properties);
virtual ~ElementInlineCSSStyleDeclaration() override = default;
@ -131,7 +131,7 @@ private:
virtual void update_style_attribute() override;
JS::GCPtr<DOM::Element> m_element;
GC::Ptr<DOM::Element> m_element;
// https://drafts.csswg.org/cssom/#cssstyledeclaration-updating-flag
bool m_updating { false };