1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-16 14:35:00 +00:00
serenity/Userland/Libraries/LibJS/Runtime
Andreas Kling ff60e8ffc6 LibJS: Use Vector instead of HashMap in DeclarativeEnvironment
Constructing the HashMap in DeclarativeEnvironment was by far the most
expensive thing when making JavaScript function calls.

As it turns out, we don't really need this to be a HashMap in the first
place, as lookups are cached (by EnvironmentCoordinate) after the first
access, so after that we were not even looking in the HashMap, going
directly to the bindings Vector instead.

This reduces function_declaration_instantiation() from 16% to 9% when
idling in "Biolab Disaster". It also reduces has_binding() from 3% to
1% on the same content.

With these changes, we now actually get to idle a little bit between
game frames on my machine. :^)
2022-03-07 14:49:21 +01:00
..
Intl LibJS: Define the Intl.Collator's compare function name to be empty 2022-02-21 16:30:19 +00:00
Temporal LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
AbstractOperations.cpp LibJS: Get rid of unnecessary work from canonical_numeric_index_string 2022-02-14 21:06:49 +00:00
AbstractOperations.h LibJS: Get rid of unnecessary work from canonical_numeric_index_string 2022-02-14 21:06:49 +00:00
Accessor.h LibJS: Remove unused Accessor::call_{getter,setter}() 2022-01-04 23:37:26 +00:00
AggregateError.cpp LibJS: Make AggregateError inherit from Error 2021-06-23 13:59:17 +01:00
AggregateError.h LibJS: Make AggregateError inherit from Error 2021-06-23 13:59:17 +01:00
AggregateErrorConstructor.cpp LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
AggregateErrorConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
AggregateErrorPrototype.cpp LibJS: Add define_direct_property and remove the define_property helper 2021-07-06 14:20:30 +01:00
AggregateErrorPrototype.h LibJS: Implement AggregateError 2021-06-11 18:49:50 +01:00
ArgumentsObject.cpp Everywhere: Rename JS::PropertyKey variables from property_{name => key} 2022-02-06 22:02:45 +00:00
ArgumentsObject.h LibJS: Rename PropertyName to PropertyKey 2021-10-24 17:18:07 +02:00
Array.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
Array.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
ArrayBuffer.cpp LibJS: Implement and test getters added by resizable ArrayBuffer 2022-03-02 20:53:18 +01:00
ArrayBuffer.h LibJS: Implement and test getters added by resizable ArrayBuffer 2022-03-02 20:53:18 +01:00
ArrayBufferConstructor.cpp LibJS: Accept ArrayBuffer constructor options argument 2022-03-02 20:53:18 +01:00
ArrayBufferConstructor.h LibJS: Convert ArrayBufferConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ArrayBufferPrototype.cpp LibJS: Implement and test ArrayBuffer.prototype.resize 2022-03-02 20:53:18 +01:00
ArrayBufferPrototype.h LibJS: Implement and test ArrayBuffer.prototype.resize 2022-03-02 20:53:18 +01:00
ArrayConstructor.cpp LibJS: Use new construct AO overload where easily applicable 2022-01-25 22:09:13 +00:00
ArrayConstructor.h LibJS: Convert ArrayConstructor functions to ThrowCompletionOr 2021-10-23 02:49:41 +03:00
ArrayIterator.cpp LibJS: Consistently make prototype the last argument in Object ctors 2021-06-20 12:12:39 +02:00
ArrayIterator.h LibJS: Consistently make prototype the last argument in Object ctors 2021-06-20 12:12:39 +02:00
ArrayIteratorPrototype.cpp LibJS: Convert ArrayIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ArrayIteratorPrototype.h LibJS: Convert ArrayIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ArrayPrototype.cpp LibJS: Make Map iterators independent of the underlying hashmap 2022-02-09 20:57:41 +00:00
ArrayPrototype.h LibJS: Implement Array.prototype.groupByToMap 2022-01-05 11:21:38 +01:00
AsyncFromSyncIterator.cpp LibJS: Implement proper Iterator records 2022-01-09 22:02:43 +01:00
AsyncFromSyncIterator.h LibJS: Implement proper Iterator records 2022-01-09 22:02:43 +01:00
AsyncFromSyncIteratorPrototype.cpp LibJS: Use new NativeFunction::create() in most places 2022-02-20 23:21:40 +00:00
AsyncFromSyncIteratorPrototype.h LibJS: Implement proper Iterator records 2022-01-09 22:02:43 +01:00
AsyncFunctionConstructor.cpp LibJS: Use FunctionConstructor as the proto of AsyncFunctionConstructor 2022-02-19 18:06:39 +00:00
AsyncFunctionConstructor.h LibJS: Add support for async functions 2021-11-10 08:48:27 +00:00
AsyncFunctionDriverWrapper.cpp LibJS+Everywhere: Remove all VM::clear_exception() calls 2022-02-08 09:12:42 +00:00
AsyncFunctionDriverWrapper.h LibJS: Implement async functions as generator functions in BC mode 2021-11-12 13:01:59 +00:00
AsyncFunctionPrototype.cpp LibJS: Add support for async functions 2021-11-10 08:48:27 +00:00
AsyncFunctionPrototype.h LibJS: Add support for async functions 2021-11-10 08:48:27 +00:00
AsyncGeneratorFunctionConstructor.cpp LibJS: Remove duplicate definition of AsyncGeneratorFunction.prototype 2022-01-19 19:26:03 +00:00
AsyncGeneratorFunctionConstructor.h LibJS: Parse async generator functions 2021-11-21 21:46:39 +00:00
AsyncGeneratorFunctionPrototype.cpp LibJS: Parse async generator functions 2021-11-21 21:46:39 +00:00
AsyncGeneratorFunctionPrototype.h LibJS: Parse async generator functions 2021-11-21 21:46:39 +00:00
AsyncIteratorPrototype.cpp LibJS: Mark %{Async,}IteratorPrototype%[@@iterator] as Configurable 2022-02-19 22:16:30 +00:00
AsyncIteratorPrototype.h LibJS: Add AsyncIteratorPrototype 2021-11-29 15:20:07 +00:00
AtomicsObject.cpp LibJS: Make TypedArray::element_name return FlyString instead of String 2022-02-08 23:08:43 +00:00
AtomicsObject.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
BigInt.cpp LibJS: Convert the NumberToBigInt AO to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
BigInt.h LibJS: Mark single argument BigInt() constructor as 'explicit' 2021-10-30 16:32:20 +02:00
BigIntConstructor.cpp LibJS: Implement BigInt.asUintN 2022-02-06 15:49:54 +00:00
BigIntConstructor.h LibJS: Convert BigIntConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
BigIntObject.cpp LibJS+LibWeb+Spreadsheet: Upcall visit_edges() via Base typedef 2021-09-11 14:10:11 +02:00
BigIntObject.h LibJS: Remove Object::value_of() 2021-12-10 22:52:36 +00:00
BigIntPrototype.cpp LibJS: Implement ECMA-402 BigInt.prototype.toLocaleString 2022-01-30 20:05:27 +00:00
BigIntPrototype.h LibJS: Convert BigIntPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
BooleanConstructor.cpp LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
BooleanConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
BooleanObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanObject.h LibJS: Remove Object::value_of() 2021-12-10 22:52:36 +00:00
BooleanPrototype.cpp LibJS: Remove Object::value_of() 2021-12-10 22:52:36 +00:00
BooleanPrototype.h LibJS: Convert BooleanPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
BoundFunction.cpp LibJS: Implement Function.prototype.bind() according to the spec :^) 2022-02-09 23:31:34 +00:00
BoundFunction.h LibJS: Implement Function.prototype.bind() according to the spec :^) 2022-02-09 23:31:34 +00:00
CanonicalIndex.h LibJS: Add missing include for 'u32' to CanonicalIndex.h 2022-02-14 23:02:56 +00:00
CommonPropertyNames.h LibJS: Implement and test ArrayBuffer.prototype.resize 2022-03-02 20:53:18 +01:00
Completion.cpp LibJS: Spin the event loop until await has completed 2022-02-28 23:22:35 +00:00
Completion.h LibJS: Do not refer to moved-from completions / values 2022-02-10 14:10:34 +00:00
ConsoleObject.cpp LibJS: Implement console.time/timeLog/timeEnd() methods 2021-12-27 21:44:07 +01:00
ConsoleObject.h LibJS: Implement console.time/timeLog/timeEnd() methods 2021-12-27 21:44:07 +01:00
DataView.cpp LibJS+LibWeb+Spreadsheet: Upcall visit_edges() via Base typedef 2021-09-11 14:10:11 +02:00
DataView.h LibJS: Consistently make prototype the last argument in Object ctors 2021-06-20 12:12:39 +02:00
DataViewConstructor.cpp LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
DataViewConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
DataViewPrototype.cpp LibJS: Convert DataViewPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
DataViewPrototype.h LibJS: Convert DataViewPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
Date.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
Date.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
DateConstructor.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
DateConstructor.h LibJS: Convert DateConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
DatePrototype.cpp LibJS: Explicitly handle invalid Date objects in UTC time setters 2022-02-04 13:47:50 +00:00
DatePrototype.h LibJS: Implement Date.prototype.setUTCDate 2022-01-16 11:07:02 +01:00
DeclarativeEnvironment.cpp LibJS: Use Vector instead of HashMap in DeclarativeEnvironment 2022-03-07 14:49:21 +01:00
DeclarativeEnvironment.h LibJS: Use Vector instead of HashMap in DeclarativeEnvironment 2022-03-07 14:49:21 +01:00
ECMAScriptFunctionObject.cpp LibJS: Do not create a prototype property on AsyncFunction instances 2022-02-19 18:06:39 +00:00
ECMAScriptFunctionObject.h LibJS: Add fast_is<T>() for things that were hot in RTTI 2022-02-13 14:44:36 +01:00
Environment.cpp LibJS: Remove unnecessary GlobalObject pointer from Environment 2022-01-31 16:19:23 +01:00
Environment.h LibJS: Remove unnecessary GlobalObject pointer from Environment 2022-01-31 16:19:23 +01:00
EnvironmentCoordinate.h LibJS: Add missing header in EnvironmentCoordinate.h 2021-10-20 09:20:18 +01:00
Error.cpp LibJS: Fix two typos in comments 2022-02-08 18:17:12 +00:00
Error.h LibJS: Add a traceback to Error 2022-02-08 09:12:42 +00:00
ErrorConstructor.cpp LibJS: Add spec comments to the NativeError constructor 2022-02-07 14:44:42 +00:00
ErrorConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
ErrorPrototype.cpp LibJS: Add spec comments to Error.prototype.toString() 2022-02-07 14:35:29 +00:00
ErrorPrototype.h LibJS: Let Error prototypes inherit from PrototypeObject 2022-02-07 14:32:39 +00:00
ErrorTypes.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ErrorTypes.h LibWeb: Add a very basic and ad-hoc version of IDL overload resolution 2022-03-05 23:40:08 +01:00
ExecutionContext.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
FinalizationRegistry.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
FinalizationRegistry.h LibJS: Setup host hooks and have promise jobs work out the realm 2022-02-08 17:47:44 +00:00
FinalizationRegistryConstructor.cpp LibJS: Setup host hooks and have promise jobs work out the realm 2022-02-08 17:47:44 +00:00
FinalizationRegistryConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
FinalizationRegistryPrototype.cpp LibJS: Fix two typos in comments 2022-02-08 18:17:12 +00:00
FinalizationRegistryPrototype.h LibJS: Convert FinalizationRegistryPrototype funcs to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
FunctionConstructor.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
FunctionConstructor.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
FunctionEnvironment.cpp LibJS: Ensure get_new_target() never returns an empty value 2021-12-29 00:16:51 +01:00
FunctionEnvironment.h LibJS: Remove unused FunctionEnvironment this value getter/setter 2021-12-29 00:16:51 +01:00
FunctionKind.h LibJS: Rename FunctionKind::{Regular => Normal} 2022-01-16 01:54:48 +01:00
FunctionObject.cpp LibJS: Add [[InitialName]] and use it in Function.prototype.toString() 2022-02-20 23:21:40 +00:00
FunctionObject.h LibJS: Add FunctionObject constructor allowing null prototype 2022-02-09 23:31:34 +00:00
FunctionPrototype.cpp LibJS: Add [[InitialName]] and use it in Function.prototype.toString() 2022-02-20 23:21:40 +00:00
FunctionPrototype.h LibJS: Convert FunctionPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
GeneratorFunctionConstructor.cpp LibJS: Implement create_dynamic_function() according to the spec 2022-01-16 01:54:48 +01:00
GeneratorFunctionConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
GeneratorFunctionPrototype.cpp LibJS: Rename GeneratorObjectPrototype to GeneratorPrototype 2022-01-16 14:50:22 +01:00
GeneratorFunctionPrototype.h LibJS: Rename Function => FunctionObject 2021-06-27 22:36:04 +02:00
GeneratorObject.cpp LibJS: More properly implement scoping rules in bytecode codegen 2022-02-13 14:41:33 +00:00
GeneratorObject.h LibJS: More properly implement scoping rules in bytecode codegen 2022-02-13 14:41:33 +00:00
GeneratorPrototype.cpp LibJS: Rename GeneratorObjectPrototype to GeneratorPrototype 2022-01-16 14:50:22 +01:00
GeneratorPrototype.h LibJS: Rename GeneratorObjectPrototype to GeneratorPrototype 2022-01-16 14:50:22 +01:00
GlobalEnvironment.cpp LibJS: Remove unnecessary GlobalObject pointer from Environment 2022-01-31 16:19:23 +01:00
GlobalEnvironment.h LibJS: Convert create_global_function_binding() to ThrowCompletionOr 2021-12-29 16:02:44 +01:00
GlobalObject.cpp LibJS: Initialize {Async,}{Generator,}Function constructors properly 2022-02-19 18:06:39 +00:00
GlobalObject.h LibJS: Initialize {Async,}{Generator,}Function constructors properly 2022-02-19 18:06:39 +00:00
IndexedProperties.cpp LibJS: Use entire array of SimpleIndexedPropertyStorage before growing 2022-02-15 00:51:25 +00:00
IndexedProperties.h LibJS: Stop eagerly creating the backing store for IndexedProperties 2022-02-13 14:44:36 +01:00
Iterator.h LibJS: Add a spec link for Iterator Records 2022-02-18 13:57:34 +00:00
IteratorOperations.cpp LibJS: Add a spec link for Iterator Records 2022-02-18 13:57:34 +00:00
IteratorOperations.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
IteratorPrototype.cpp LibJS: Mark %{Async,}IteratorPrototype%[@@iterator] as Configurable 2022-02-19 22:16:30 +00:00
IteratorPrototype.h LibJS: Convert %IteratorPrototype% to ThrowCompletionOr 2021-10-31 07:50:30 +02:00
JobCallback.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
JSONObject.cpp LibJS: Fix JSON.stringify with stale surrogate codepoints 2022-02-07 13:53:36 +00:00
JSONObject.h LibJS: Convert JSONObject functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
Map.cpp LibJS: Fix Map Iterators when elements are deleted during iteration 2022-02-10 14:09:39 +00:00
Map.h LibJS: Avoid unnecessary ToObject conversion when resolving references 2022-02-13 14:44:36 +01:00
MapConstructor.cpp Everywhere: Convert VM::call() to JS::call() 2022-01-23 15:24:45 +00:00
MapConstructor.h LibJS: Convert MapConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
MapIterator.cpp LibJS: Make Map iterators independent of the underlying hashmap 2022-02-09 20:57:41 +00:00
MapIterator.h LibJS: Make Map iterators independent of the underlying hashmap 2022-02-09 20:57:41 +00:00
MapIteratorPrototype.cpp LibJS: Make Map iterators independent of the underlying hashmap 2022-02-09 20:57:41 +00:00
MapIteratorPrototype.h LibJS: Convert MapIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
MapPrototype.cpp LibJS: Make Map iterators independent of the underlying hashmap 2022-02-09 20:57:41 +00:00
MapPrototype.h LibJS: Convert MapPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
MathObject.cpp LibJS: Unify exponentiation logic for ** operator and Math.pow 2022-02-18 22:31:36 +00:00
MathObject.h LibJS: Convert MathObject functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ModuleEnvironment.cpp LibJS: Reduce header dependency graph in Realm.h 2022-02-07 19:16:46 +01:00
ModuleEnvironment.h LibJS: Add ModuleEnvironment 2022-01-22 01:21:18 +00:00
ModuleNamespaceObject.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
ModuleNamespaceObject.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
NativeFunction.cpp LibJS: Add NativeFunction::create() overload for CreateBuiltinFunction 2022-02-20 23:21:40 +00:00
NativeFunction.h LibJS: Add NativeFunction::create() overload for CreateBuiltinFunction 2022-02-20 23:21:40 +00:00
NumberConstructor.cpp LibJS: Convert NumberConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
NumberConstructor.h LibJS: Convert NumberConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
NumberObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NumberObject.h LibJS: Remove Object::value_of() 2021-12-10 22:52:36 +00:00
NumberPrototype.cpp LibJS: Fix rounding issues in Number.toFixed 2022-03-02 08:34:04 +01:00
NumberPrototype.h LibJS: Implement Number.prototype.toExponential 2022-01-04 13:07:42 +00:00
Object.cpp LibJS: Use new NativeFunction::create() in most places 2022-02-20 23:21:40 +00:00
Object.h LibJS: Add Object constructor allowing null prototype 2022-02-09 23:31:34 +00:00
ObjectConstructor.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
ObjectConstructor.h LibJS: Convert ObjectConstructor to ThrowCompletionOr 2021-10-31 07:50:30 +02:00
ObjectEnvironment.cpp LibJS+Everywhere: Remove all VM::clear_exception() calls 2022-02-08 09:12:42 +00:00
ObjectEnvironment.h LibJS: Convert delete_binding() to ThrowCompletionOr 2021-10-09 21:53:47 +01:00
ObjectPrototype.cpp LibJS: Convert Object.prototype to ThrowCompletionOr 2021-10-31 07:50:30 +02:00
ObjectPrototype.h LibJS: Convert Object.prototype to ThrowCompletionOr 2021-10-31 07:50:30 +02:00
PrimitiveString.cpp LibJS: Correct an include in PrimitiveString 2022-02-15 00:51:25 +00:00
PrimitiveString.h LibJS+LibLine: Run clang-format 2022-02-13 14:55:23 +01:00
PrivateEnvironment.cpp LibJS: Mark entire private environment chains during GC 2021-12-08 10:29:54 +01:00
PrivateEnvironment.h LibJS: Mark entire private environment chains during GC 2021-12-08 10:29:54 +01:00
Promise.cpp LibJS: Setup host hooks and have promise jobs work out the realm 2022-02-08 17:47:44 +00:00
Promise.h LibWeb: Introduce the Environment Settings Object 2022-02-08 17:47:44 +00:00
PromiseConstructor.cpp LibJS+Everywhere: Remove VM::exception() and most related functions 2022-02-08 09:12:42 +00:00
PromiseConstructor.h LibJS: Convert PromiseConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
PromiseJobs.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
PromiseJobs.h LibJS: Setup host hooks and have promise jobs work out the realm 2022-02-08 17:47:44 +00:00
PromisePrototype.cpp LibJS: Capture values as handles in Promise.prototype.finally callbacks 2022-02-20 23:21:40 +00:00
PromisePrototype.h LibJS: Convert PromisePrototype functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
PromiseReaction.cpp LibJS: Use new NativeFunction::create() in most places 2022-02-20 23:21:40 +00:00
PromiseReaction.h LibJS: Setup host hooks and have promise jobs work out the realm 2022-02-08 17:47:44 +00:00
PromiseResolvingElementFunctions.cpp LibJS: Visit internal values in PromiseValueList 2022-02-05 11:52:51 +01:00
PromiseResolvingElementFunctions.h LibJS: Visit internal values in PromiseValueList 2022-02-05 11:52:51 +01:00
PromiseResolvingFunction.cpp LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
PromiseResolvingFunction.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
PropertyAttributes.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
PropertyDescriptor.cpp LibJS: Convert to_property_descriptor() to ThrowCompletionOr 2021-10-04 09:52:15 +01:00
PropertyDescriptor.h AK: Convert AK::Format formatting helpers to returning ErrorOr<void> 2021-11-17 00:21:13 +01:00
PropertyKey.h Everywhere: Rename JS::PropertyKey variables from property_{name => key} 2022-02-06 22:02:45 +00:00
PrototypeObject.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
ProxyConstructor.cpp LibJS: Use new NativeFunction::create() in most places 2022-02-20 23:21:40 +00:00
ProxyConstructor.h LibJS: Convert ProxyConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ProxyObject.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
ProxyObject.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
Realm.cpp LibJS: Reduce header dependency graph in Realm.h 2022-02-07 19:16:46 +01:00
Realm.h LibJS: Reduce header dependency graph in Realm.h 2022-02-07 19:16:46 +01:00
Reference.cpp LibJS: Correct receiver value in GetValue's [[Get]] call 2022-02-13 14:30:26 +00:00
Reference.h LibWeb: Introduce the Environment Settings Object 2022-02-08 17:47:44 +00:00
ReflectObject.cpp Everywhere: Convert VM::call() to JS::call() 2022-01-23 15:24:45 +00:00
ReflectObject.h LibJS: Convert ReflectObject functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
RegExpConstructor.cpp LibJS: Convert RegExpConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
RegExpConstructor.h LibJS: Convert RegExpConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
RegExpObject.cpp LibJS: Convert the RegExpCreate AO to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
RegExpObject.h LibRegex+LibJS: Avoid searching for more than one match in JS RegExps 2022-02-05 00:09:32 +01:00
RegExpPrototype.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
RegExpPrototype.h LibJS: Define RegExp.prototype methods in spec order 2021-12-21 14:56:00 +01:00
RegExpStringIterator.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
RegExpStringIterator.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
RegExpStringIteratorPrototype.cpp Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
RegExpStringIteratorPrototype.h Everywhere: Update copyrights with my new serenityos.org e-mail :^) 2022-01-31 18:23:22 +00:00
Set.cpp LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
Set.h LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
SetConstructor.cpp Everywhere: Convert VM::call() to JS::call() 2022-01-23 15:24:45 +00:00
SetConstructor.h LibJS: Convert SetConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
SetIterator.cpp LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
SetIterator.h LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
SetIteratorPrototype.cpp LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
SetIteratorPrototype.h LibJS: Convert SetIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
SetPrototype.cpp LibJS: Implement Sets using Maps 2022-02-09 20:57:41 +00:00
SetPrototype.h LibJS: Convert SetPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ShadowRealm.cpp LibJS: Use new NativeFunction::create() in most places 2022-02-20 23:21:40 +00:00
ShadowRealm.h LibJS: Remove the name prefix for wrapped functions 2022-02-12 16:06:37 +00:00
ShadowRealmConstructor.cpp LibJS: Add ScriptOrModule to execution context and track it everywhere 2022-01-22 01:21:18 +00:00
ShadowRealmConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
ShadowRealmPrototype.cpp LibJS: Convert ShadowRealmPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
ShadowRealmPrototype.h LibJS: Convert ShadowRealmPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
Shape.cpp Everywhere: Rename JS::PropertyKey variables from property_{name => key} 2022-02-06 22:02:45 +00:00
Shape.h Everywhere: Rename JS::PropertyKey variables from property_{name => key} 2022-02-06 22:02:45 +00:00
StringConstructor.cpp LibJS: Convert StringConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
StringConstructor.h LibJS: Convert StringConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
StringIterator.cpp LibJS: Consistently make prototype the last argument in Object ctors 2021-06-20 12:12:39 +02:00
StringIterator.h LibJS: Consistently make prototype the last argument in Object ctors 2021-06-20 12:12:39 +02:00
StringIteratorPrototype.cpp LibJS: Convert StringIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
StringIteratorPrototype.h LibJS: Convert StringIteratorPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
StringObject.cpp LibJS: Get rid of unnecessary work from canonical_numeric_index_string 2022-02-14 21:06:49 +00:00
StringObject.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
StringOrSymbol.h LibJS: Make StringOrSymbol always be FlyString in the string case 2021-06-13 19:11:29 +02:00
StringPrototype.cpp LibJS: Re-implement String.localeCompare using the StringCompare AO 2022-02-20 22:05:59 -05:00
StringPrototype.h LibJS: Trim all types of whitespace characters before parsing numbers 2022-02-19 22:16:30 +00:00
Symbol.cpp LibJS: Store and return undefined Symbol description 2021-06-15 18:31:52 +01:00
Symbol.h LibJS: Store and return undefined Symbol description 2021-06-15 18:31:52 +01:00
SymbolConstructor.cpp LibJS: Convert SymbolConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
SymbolConstructor.h LibJS: Convert SymbolConstructor functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
SymbolObject.cpp LibJS+LibWeb+Spreadsheet: Upcall visit_edges() via Base typedef 2021-09-11 14:10:11 +02:00
SymbolObject.h LibJS: Remove Object::value_of() 2021-12-10 22:52:36 +00:00
SymbolPrototype.cpp LibJS: Convert SymbolPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
SymbolPrototype.h LibJS: Convert SymbolPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
TypedArray.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
TypedArray.h LibJS: Get rid of unnecessary work from canonical_numeric_index_string 2022-02-14 21:06:49 +00:00
TypedArrayConstructor.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
TypedArrayConstructor.h LibJS: Convert TypedArrayConstructor functions to ThrowCompletionOr 2021-10-23 18:01:51 +02:00
TypedArrayPrototype.cpp LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00
TypedArrayPrototype.h LibJS: Convert TypedArrayPrototype functions to ThrowCompletionOr 2021-10-23 18:01:51 +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: Trim all types of whitespace characters before parsing numbers 2022-02-19 22:16:30 +00:00
Value.h Revert "LibJS: Get rid of unnecessary work from canonical_numeric_index_string" 2022-02-13 16:01:32 +01:00
ValueTraits.h LibJS: Avoid unnecessary ToObject conversion when resolving references 2022-02-13 14:44:36 +01:00
VM.cpp LibJS: Implement and test ArrayBuffer.prototype.resize 2022-03-02 20:53:18 +01:00
VM.h LibJS: Implement and test ArrayBuffer.prototype.resize 2022-03-02 20:53:18 +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: Use HashMap::remove_all_matching() in WeakMap 2022-01-05 18:57:14 +01:00
WeakMap.h LibJS: Remove the JS_TRACK_ZOMBIE_CELLS option 2022-02-05 11:52:51 +01:00
WeakMapConstructor.cpp Everywhere: Convert VM::call() to JS::call() 2022-01-23 15:24:45 +00:00
WeakMapConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
WeakMapPrototype.cpp LibJS: Convert WeakMapPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WeakMapPrototype.h LibJS: Convert WeakMapPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WeakRef.cpp LibJS: Make WeakContainer pruning do less work 2021-10-05 18:52:00 +02:00
WeakRef.h LibJS: Remove the JS_TRACK_ZOMBIE_CELLS option 2022-02-05 11:52:51 +01:00
WeakRefConstructor.cpp LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
WeakRefConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
WeakRefPrototype.cpp LibJS: Convert WeakRefPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WeakRefPrototype.h LibJS: Convert WeakRefPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WeakSet.cpp LibJS: Use HashTable::remove_all_matching() in WeakSet :^) 2022-01-05 18:57:14 +01:00
WeakSet.h LibJS: Remove the JS_TRACK_ZOMBIE_CELLS option 2022-02-05 11:52:51 +01:00
WeakSetConstructor.cpp Everywhere: Convert VM::call() to JS::call() 2022-01-23 15:24:45 +00:00
WeakSetConstructor.h LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOr 2021-10-21 09:02:23 +01:00
WeakSetPrototype.cpp LibJS: Convert WeakSetPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WeakSetPrototype.h LibJS: Convert WeakSetPrototype functions to ThrowCompletionOr 2021-10-29 21:29:24 +03:00
WrappedFunction.cpp LibJS: Remove the name prefix for wrapped functions 2022-02-12 16:06:37 +00:00
WrappedFunction.h LibJS: Replace uses of MarkedValueList with MarkedVector<Value> 2022-02-09 12:25:27 +00:00