1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 21:17:44 +00:00

LibJS: Hide all the constructors!

Now that the GC allocator is able to invoke Cell subclass constructors
directly via friendship, we no longer need to keep them public. :^)
This commit is contained in:
Andreas Kling 2022-08-28 23:51:28 +02:00
parent d54ba587f3
commit 35c9aa7c05
196 changed files with 456 additions and 242 deletions

View file

@ -18,7 +18,6 @@ class ProxyObject final : public FunctionObject {
public:
static ProxyObject* create(Realm&, Object& target, Object& handler);
ProxyObject(Object& target, Object& handler, Object& prototype);
virtual ~ProxyObject() override = default;
virtual FlyString const& name() const override;
@ -47,6 +46,8 @@ public:
virtual ThrowCompletionOr<Object*> internal_construct(MarkedVector<Value> arguments_list, FunctionObject& new_target) override;
private:
ProxyObject(Object& target, Object& handler, Object& prototype);
virtual void visit_edges(Visitor&) override;
virtual bool is_function() const override { return m_target.is_function(); }