1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 10:48:11 +00:00

LibJS: Move ConsoleObject construction from GlobalObject to Intrinsics

This will allow us to move the underlying console from GlobalObject to
ConsoleObject without still having to do a 'console' property lookup on
the GlobalObject.
This commit is contained in:
Linus Groh 2022-08-28 14:16:32 +01:00
parent d35f53c344
commit 78eca3ae64
3 changed files with 4 additions and 1 deletions

View file

@ -95,6 +95,7 @@
#define JS_ENUMERATE_BUILTIN_NAMESPACE_OBJECTS \ #define JS_ENUMERATE_BUILTIN_NAMESPACE_OBJECTS \
__JS_ENUMERATE(AtomicsObject, atomics) \ __JS_ENUMERATE(AtomicsObject, atomics) \
__JS_ENUMERATE(ConsoleObject, console) \
__JS_ENUMERATE(Intl::Intl, intl) \ __JS_ENUMERATE(Intl::Intl, intl) \
__JS_ENUMERATE(JSONObject, json) \ __JS_ENUMERATE(JSONObject, json) \
__JS_ENUMERATE(MathObject, math) \ __JS_ENUMERATE(MathObject, math) \
@ -216,6 +217,7 @@ class TypedArrayConstructor;
class TypedArrayPrototype; class TypedArrayPrototype;
class AtomicsObject; class AtomicsObject;
class ConsoleObject;
class JSONObject; class JSONObject;
class MathObject; class MathObject;
class ReflectObject; class ReflectObject;

View file

@ -172,7 +172,7 @@ void GlobalObject::initialize_global_object(Realm& realm)
// Non-standard // Non-standard
define_direct_property(vm.names.InternalError, realm.intrinsics().internal_error_constructor(), attr); define_direct_property(vm.names.InternalError, realm.intrinsics().internal_error_constructor(), attr);
define_direct_property(vm.names.console, heap().allocate<ConsoleObject>(realm, realm), attr); define_direct_property(vm.names.console, realm.intrinsics().console_object(), attr);
define_native_function(realm, vm.names.gc, gc, 0, attr); define_native_function(realm, vm.names.gc, gc, 0, attr);
// Assign intrinsics and functions that depend on the GlobalObject's native functions // Assign intrinsics and functions that depend on the GlobalObject's native functions

View file

@ -23,6 +23,7 @@
#include <LibJS/Runtime/BigIntPrototype.h> #include <LibJS/Runtime/BigIntPrototype.h>
#include <LibJS/Runtime/BooleanConstructor.h> #include <LibJS/Runtime/BooleanConstructor.h>
#include <LibJS/Runtime/BooleanPrototype.h> #include <LibJS/Runtime/BooleanPrototype.h>
#include <LibJS/Runtime/ConsoleObject.h>
#include <LibJS/Runtime/DataViewConstructor.h> #include <LibJS/Runtime/DataViewConstructor.h>
#include <LibJS/Runtime/DataViewPrototype.h> #include <LibJS/Runtime/DataViewPrototype.h>
#include <LibJS/Runtime/DateConstructor.h> #include <LibJS/Runtime/DateConstructor.h>