mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 19:47:46 +00:00
LibJS+LibWeb: Replace GlobalObject with Realm in object constructors
No functional changes - we can still very easily get to the global object via `Realm::global_object()`. This is in preparation of moving the intrinsics to the realm and no longer having to pass a global object when allocating any object. In a few (now, and many more in subsequent commits) places we get a realm using `GlobalObject::associated_realm()`, this is intended to be temporary. For example, create() functions will later receive the same treatment and are passed a realm instead of a global object.
This commit is contained in:
parent
4c300cc5e8
commit
ecd163bdf1
315 changed files with 592 additions and 554 deletions
|
@ -49,7 +49,7 @@ class Object : public Cell {
|
|||
public:
|
||||
static Object* create(GlobalObject&, Object* prototype);
|
||||
|
||||
Object(GlobalObject&, Object* prototype);
|
||||
Object(Realm&, Object* prototype);
|
||||
explicit Object(Object& prototype);
|
||||
explicit Object(Shape&);
|
||||
virtual void initialize(GlobalObject&) override;
|
||||
|
@ -196,8 +196,8 @@ public:
|
|||
protected:
|
||||
enum class GlobalObjectTag { Tag };
|
||||
enum class ConstructWithoutPrototypeTag { Tag };
|
||||
explicit Object(GlobalObjectTag, Realm&);
|
||||
Object(ConstructWithoutPrototypeTag, GlobalObject&);
|
||||
Object(GlobalObjectTag, Realm&);
|
||||
Object(ConstructWithoutPrototypeTag, Realm&);
|
||||
|
||||
void set_prototype(Object*);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue