1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 08:58:11 +00:00
serenity/Userland/Libraries/LibJS/Runtime
Timothy Flynn 12f9f3d9ef LibJS: Support instrinsic Object properties with deferred evaluation
For performance, it is desirable to defer evaluation of intrinsics that
are stored on the GlobalObject for every created Realm. To support this,
Object now maintains a global storage map to store lambdas that will
return the associated intrinsic when evaluated. Once accessed, the
instrinsic is moved from this global map to normal Object storage.

To prevent this flow from becoming observable, when a deferred intrinsic
is stored, we still place an empty object in the normal Object storage.
This is so we still create the metadata for the object, and in doing so,
can preserve insertion order of the Object storage. Otherwise, this will
be observable by way of Object.getOwnPropertyDescriptors.
2022-11-26 09:36:22 +01:00
..
Intl LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
Temporal LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
AbstractOperations.cpp LibJS: Make FunctionNode::Parameter be a standalone FunctionParameter 2022-11-23 16:05:59 +00:00
AbstractOperations.h LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
Accessor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AggregateError.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AggregateError.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AggregateErrorConstructor.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AggregateErrorConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AggregateErrorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AggregateErrorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArgumentsObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArgumentsObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Array.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
Array.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayBuffer.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArrayBuffer.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayBufferConstructor.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
ArrayBufferConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayBufferPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArrayBufferPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
ArrayConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArrayIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArrayIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ArrayPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ArrayPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncFromSyncIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AsyncFromSyncIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncFromSyncIteratorPrototype.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
AsyncFromSyncIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncFunctionConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
AsyncFunctionConstructor.h LibJS: Make AsyncFunctionConstructor.h not include AST.h 2022-11-23 16:05:59 +00:00
AsyncFunctionDriverWrapper.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
AsyncFunctionDriverWrapper.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncFunctionPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AsyncFunctionPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncGenerator.cpp LibJS: Make AsyncGenerator not include AsyncGeneratorRequest.h 2022-11-23 16:05:59 +00:00
AsyncGenerator.h LibJS: Make AsyncGenerator not include AsyncGeneratorRequest.h 2022-11-23 16:05:59 +00:00
AsyncGeneratorFunctionConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
AsyncGeneratorFunctionConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncGeneratorFunctionPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AsyncGeneratorFunctionPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncGeneratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AsyncGeneratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AsyncGeneratorRequest.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
AsyncIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
AsyncIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
AtomicsObject.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
AtomicsObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BigInt.cpp LibCrypto+LibJS: Remove the create_from methods from BigInteger 2022-08-26 19:18:26 +01:00
BigInt.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BigIntConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
BigIntConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BigIntObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
BigIntObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BigIntPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
BigIntPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BooleanConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
BooleanConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BooleanObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
BooleanObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BooleanPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
BooleanPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
BoundFunction.cpp LibJS: Replace GlobalObject with VM in common AOs [Part 18/19] 2022-08-23 13:58:30 +01:00
BoundFunction.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
CanonicalIndex.h LibJS: Add missing include for 'u32' to CanonicalIndex.h 2022-02-14 23:02:56 +00:00
ClassFieldDefinition.h LibJS: Include Environment.h directly in ClassFieldDefinition.h 2022-10-01 15:36:20 +01:00
CommonPropertyNames.h LibJS: Implement RegExp legacy static properties 2022-10-17 17:08:33 +02:00
Completion.cpp LibJS: Move throw_completion(Value) out of line 2022-11-09 15:48:08 +01:00
Completion.h LibJS: Move throw_completion(Value) out of line 2022-11-09 15:48:08 +01:00
ConsoleObject.cpp LibJS: Create Console using a Realm instead of a VM 2022-09-21 20:03:49 +01:00
ConsoleObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
DataView.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
DataView.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
DataViewConstructor.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
DataViewConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
DataViewPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
DataViewPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Date.cpp LibJS: Remove the now-unused LocalTZA AO 2022-11-06 01:47:37 +00:00
Date.h LibJS: Remove the now-unused LocalTZA AO 2022-11-06 01:47:37 +00:00
DateConstructor.cpp LibJS: Parse date strings like "9/17/2022" 2022-09-17 18:53:14 +02:00
DateConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
DatePrototype.cpp LibJS: Consolidate sources of system time zone to one location in Date 2022-10-15 18:05:02 +02:00
DatePrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
DeclarativeEnvironment.cpp LibJS: Make DeclarativeEnvironment based on bindings instead of indices 2022-09-02 02:07:37 +01:00
DeclarativeEnvironment.h LibJS: Make DeclarativeEnvironment not include AST.h 2022-11-23 16:05:59 +00:00
ECMAScriptFunctionObject.cpp LibJS: Make FunctionNode::Parameter be a standalone FunctionParameter 2022-11-23 16:05:59 +00:00
ECMAScriptFunctionObject.h LibJS: Make ECMAScriptFunctionObject.h not include AST.h 2022-11-23 16:05:59 +00:00
Environment.cpp LibJS: Remove unnecessary GlobalObject pointer from Environment 2022-01-31 16:19:23 +01:00
Environment.h LibJS: Make JS_OBJECT and JS_ENVIRONMENT forward to JS_CELL 2022-08-29 03:24:54 +02:00
EnvironmentCoordinate.h LibJS: Shrink Identifier's environment coordinate cache 2022-11-22 21:13:35 +01:00
Error.cpp LibJS: Reduce AST memory usage by shrink-wrapping source range info 2022-11-22 21:13:35 +01:00
Error.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ErrorConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
ErrorConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ErrorPrototype.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
ErrorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ErrorTypes.cpp LibJS: Emit StringViews for ErrorType instances 2022-07-12 23:11:35 +02:00
ErrorTypes.h LibJS: Align ISO 8601 grammar with annotations from IXDTF 2022-11-03 19:15:50 +00:00
ExecutionContext.h LibJS+LibWeb: Make JS::ExecutionContext protect its Web::HTML::ESO owner 2022-11-21 19:22:09 +00:00
FinalizationRegistry.cpp LibJS: Add Visitor::visit(GCPtr<T>) and Visitor::visit(NonnullGCPtr<T>) 2022-10-02 23:02:27 +01:00
FinalizationRegistry.h LibJS: Don't use a Handle<Realm> in FinalizationRegistry 2022-09-03 00:36:26 +02:00
FinalizationRegistryConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
FinalizationRegistryConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
FinalizationRegistryPrototype.cpp LibJS: Move JobCallback functions out-of-line 2022-11-23 16:05:59 +00:00
FinalizationRegistryPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
FunctionConstructor.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
FunctionConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
FunctionEnvironment.cpp LibJS: Make FunctionEnvironment not include ECMAScriptFunctionObject.h 2022-11-23 16:05:59 +00:00
FunctionEnvironment.h LibJS: Make FunctionEnvironment not include ECMAScriptFunctionObject.h 2022-11-23 16:05:59 +00:00
FunctionKind.h LibJS: Rename FunctionKind::{Regular => Normal} 2022-01-16 01:54:48 +01:00
FunctionObject.cpp LibJS+LibWeb: Make CyclicModule.h not include AST.h 2022-11-23 16:05:59 +00:00
FunctionObject.h LibJS: Use correct include + object class for Function{Object,Prototype} 2022-09-15 09:45:13 +02:00
FunctionPrototype.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
FunctionPrototype.h LibJS: Use correct include + object class for Function{Object,Prototype} 2022-09-15 09:45:13 +02:00
GeneratorFunctionConstructor.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
GeneratorFunctionConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
GeneratorFunctionPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
GeneratorFunctionPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
GeneratorObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
GeneratorObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
GeneratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
GeneratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
GlobalEnvironment.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
GlobalEnvironment.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
GlobalObject.cpp LibJS: Make parseFloat use the new double parser 2022-10-23 15:48:45 +02:00
GlobalObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
IndexedProperties.cpp Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
IndexedProperties.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
Intrinsics.cpp LibJS: Lazily initialize most Realm instrinsic contructors/prototypes 2022-11-26 09:36:22 +01:00
Intrinsics.h LibJS: Lazily initialize most Realm instrinsic contructors/prototypes 2022-11-26 09:36:22 +01:00
Iterator.h LibJS: Add a spec link for Iterator Records 2022-02-18 13:57:34 +00:00
IteratorOperations.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
IteratorOperations.h LibJS: Replace GlobalObject with VM in Iterator AOs [Part 7/19] 2022-08-23 13:58:30 +01:00
IteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
IteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
JobCallback.cpp LibJS: Move JobCallback functions out-of-line 2022-11-23 16:05:59 +00:00
JobCallback.h LibJS: Move JobCallback functions out-of-line 2022-11-23 16:05:59 +00:00
JSONObject.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
JSONObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Map.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
Map.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
MapConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
MapConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
MapIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
MapIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
MapIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
MapIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
MapPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
MapPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
MathObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
MathObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ModuleEnvironment.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
ModuleEnvironment.h LibJS: Visit GC allocated members of ModuleEnvironment 2022-10-06 16:41:36 +02:00
ModuleNamespaceObject.cpp LibJS: Put exports before symbols in keys of module namespace object 2022-09-02 02:07:37 +01:00
ModuleNamespaceObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ModuleRequest.h LibJS+LibWeb: Move JS::ModuleRequest to its own header file 2022-11-23 16:05:59 +00:00
NativeFunction.cpp LibJS: Make JS::NativeFunction use JS::SafeFunction internally 2022-09-27 14:56:17 +01:00
NativeFunction.h LibJS: Make JS::NativeFunction use JS::SafeFunction internally 2022-09-27 14:56:17 +01:00
NumberConstructor.cpp AK+Everywhere: Add AK_COMPILER_{GCC,CLANG} and use them most places 2022-10-04 23:35:07 +01:00
NumberConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
NumberObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
NumberObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
NumberPrototype.cpp LibJS: Use more accurate number-to-string method in Number toExponential 2022-11-04 21:12:10 +00:00
NumberPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Object.cpp LibJS: Support instrinsic Object properties with deferred evaluation 2022-11-26 09:36:22 +01:00
Object.h LibJS: Support instrinsic Object properties with deferred evaluation 2022-11-26 09:36:22 +01:00
ObjectConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
ObjectConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ObjectEnvironment.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
ObjectEnvironment.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ObjectPrototype.cpp LibJS: Pass Realm to define_native_{accessor,function}() 2022-08-23 13:58:30 +01:00
ObjectPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
PrimitiveString.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
PrimitiveString.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
PrivateEnvironment.cpp LibJS: Mark entire private environment chains during GC 2021-12-08 10:29:54 +01:00
PrivateEnvironment.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Promise.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
Promise.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseCapability.cpp LibJS: Capture promise capability in new_promise_capability() executor 2022-10-02 23:02:27 +01:00
PromiseCapability.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseConstructor.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
PromiseJobs.cpp Everywhere: Remove unnecessary mutable attributes from lambdas 2022-11-19 14:37:31 +00:00
PromiseJobs.h LibJS: Replace GlobalObject with VM in Promise AOs [Part 8/19] 2022-08-23 13:58:30 +01:00
PromisePrototype.cpp LibJS: Move PromiseCapability into its own cpp/h file 2022-10-02 23:02:27 +01:00
PromisePrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
PromiseReaction.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseReaction.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseResolvingElementFunctions.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseResolvingElementFunctions.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
PromiseResolvingFunction.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
PromiseResolvingFunction.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
PropertyAttributes.h Everywhere: Remove redundant inequality comparison operators 2022-11-06 10:25:08 -07:00
PropertyDescriptor.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
PropertyDescriptor.h LibJS: Replace GlobalObject with VM in remaining AOs [Part 19/19] 2022-08-23 13:58:30 +01:00
PropertyKey.h LibJS: Store symbols in a Handle inside PropertyKey 2022-10-01 15:36:20 +01:00
PrototypeObject.h LibJS: Replace GlobalObject with VM in Value AOs [Part 4/19] 2022-08-23 13:58:30 +01:00
ProxyConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
ProxyConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ProxyObject.cpp LibJS: Assert Proxy target is a function in [[Call]] and [[Construct]] 2022-09-02 22:44:44 +01:00
ProxyObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Realm.cpp LibWeb+LibJS: Let JS::Realm::HostDefined objects mark things during GC 2022-09-06 00:27:09 +02:00
Realm.h LibWeb+LibJS: Let JS::Realm::HostDefined objects mark things during GC 2022-09-06 00:27:09 +02:00
Reference.cpp LibJS: Remove unnecessary AST.h include in a handful of cpp files 2022-11-23 16:05:59 +00:00
Reference.h LibJS: Replace GlobalObject with VM in Reference AOs [Part 6/19] 2022-08-23 13:58:30 +01:00
ReflectObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ReflectObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
RegExpConstructor.cpp LibJS: Implement RegExp legacy static properties 2022-10-17 17:08:33 +02:00
RegExpConstructor.h LibJS: Implement RegExp legacy static properties 2022-10-17 17:08:33 +02:00
RegExpLegacyStaticProperties.cpp LibJS: Make Script.h not include AST.h 2022-11-23 16:05:59 +00:00
RegExpLegacyStaticProperties.h Everywhere: Fix a few comment typos 2022-11-09 16:00:32 +00:00
RegExpObject.cpp LibJS: Implement RegExp legacy static properties 2022-10-17 17:08:33 +02:00
RegExpObject.h LibJS: Make RegExpObject.h not include AST.h 2022-11-23 16:05:59 +00:00
RegExpPrototype.cpp AK+Everywhere: Turn bool keep_empty to an enum in split* functions 2022-10-24 23:29:18 +01:00
RegExpPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
RegExpStringIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
RegExpStringIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
RegExpStringIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
RegExpStringIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Set.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
Set.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SetConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
SetConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SetIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
SetIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SetIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
SetIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SetPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
SetPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ShadowRealm.cpp LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
ShadowRealm.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ShadowRealmConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
ShadowRealmConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
ShadowRealmPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
ShadowRealmPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Shape.cpp LibJS: Remove Shape::global_object() and Object::global_object() 2022-08-28 16:36:56 +01:00
Shape.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
StringConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
StringConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
StringIterator.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
StringIterator.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
StringIteratorPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
StringIteratorPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
StringObject.cpp LibJS+LibWeb: Replace GlobalObject with Realm in Heap::allocate<T>() 2022-08-23 13:58:30 +01:00
StringObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
StringOrSymbol.h LibJS: Make StringOrSymbol always be FlyString in the string case 2021-06-13 19:11:29 +02:00
StringPrototype.cpp LibJS: Implement the RegExpAlloc AO 2022-10-16 17:32:02 +02:00
StringPrototype.h LibJS: Add missing includes 2022-09-18 13:27:24 -04:00
Symbol.cpp LibJS+LibWeb: Replace GlobalObject with Realm in Heap::allocate<T>() 2022-08-23 13:58:30 +01:00
Symbol.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SymbolConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
SymbolConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SymbolObject.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
SymbolObject.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
SymbolPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
SymbolPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
TypedArray.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
TypedArray.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
TypedArrayConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
TypedArrayConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
TypedArrayPrototype.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
TypedArrayPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
Utf16String.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
Utf16String.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
Value.cpp LibJS: Publicly expose double_to_string and rename it number_to_string 2022-11-04 21:12:10 +00:00
Value.h LibJS: Reuse as_i32 in as_double in JS::Value 2022-11-17 16:05:20 +00:00
ValueTraits.h LibJS: Normalize NaN values in Sets and Maps 2022-04-02 14:15:43 +01:00
VM.cpp LibJS+LibWeb: Make Runtime/AbstractOperations.h not include AST.h 2022-11-23 16:05:59 +00:00
VM.h LibJS: Make PromiseCapability GC-allocated 2022-10-02 23:02:27 +01:00
WeakContainer.cpp LibJS: Use IntrusiveList for keeping track of WeakContainers 2021-07-21 20:17:55 +02:00
WeakContainer.h LibJS: Add missing headers 2021-10-06 23:52:40 +01:00
WeakMap.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakMap.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakMapConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
WeakMapConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakMapPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakMapPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakRef.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakRef.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakRefConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
WeakRefConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakRefPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakRefPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakSet.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakSet.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakSetConstructor.cpp LibJS: Do not invoke Cell::vm in constructors before Cell is constructed 2022-09-15 09:45:13 +02:00
WeakSetConstructor.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WeakSetPrototype.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WeakSetPrototype.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00
WrappedFunction.cpp LibJS: Move intrinsics to the realm 2022-08-27 11:29:10 +01:00
WrappedFunction.h LibJS: Hide all the constructors! 2022-08-29 03:24:54 +02:00