1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:28:12 +00:00
serenity/Userland/Libraries/LibJS/Runtime
Linus Groh 08373090ae LibJS: Add VM::on_call_stack_emptied callback
Instead of having to run queued promise jobs in LibWeb in various
places, this allows us to consolidate that into one function - this is
very close to how the spec describes it as well ("at some future point
in time, when there is no running execution context and the execution
context stack is empty, the implementation must [...]").

Eventually this will also be used to log unhandled exceptions, and
possibly other actions that require JS execution to have ended.
2021-04-24 20:11:04 +02:00
..
Accessor.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
Array.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Array.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ArrayBuffer.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayBuffer.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayBufferConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayBufferConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayBufferPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayBufferPrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayConstructor.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ArrayIterator.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ArrayIterator.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ArrayIteratorPrototype.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ArrayIteratorPrototype.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ArrayPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ArrayPrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigInt.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigInt.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntObject.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntObject.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BigIntPrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
BooleanConstructor.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanConstructor.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanPrototype.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BooleanPrototype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoundFunction.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoundFunction.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Cell.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Cell.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CommonPropertyNames.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ConsoleObject.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ConsoleObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Date.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Date.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
DateConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
DateConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
DatePrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
DatePrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Error.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Error.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ErrorConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ErrorConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ErrorPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ErrorPrototype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ErrorTypes.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ErrorTypes.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
Exception.cpp LibJS: Consolidate exception function names and source ranges 2021-04-24 20:11:04 +02:00
Exception.h LibJS: Consolidate exception function names and source ranges 2021-04-24 20:11:04 +02:00
Function.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Function.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FunctionConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
FunctionConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
FunctionPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
FunctionPrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
GlobalObject.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
GlobalObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
IndexedProperties.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
IndexedProperties.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
IteratorOperations.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
IteratorOperations.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
IteratorPrototype.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
IteratorPrototype.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
JobCallback.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
JSONObject.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
JSONObject.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
LexicalEnvironment.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LexicalEnvironment.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
MarkedValueList.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
MarkedValueList.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
MathObject.cpp LibJS: Correctly handle mixing +0 and -0 in Math.{min,max}() 2021-04-23 20:51:48 +02:00
MathObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NativeFunction.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NativeFunction.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NativeProperty.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NativeProperty.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NumberConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
NumberConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
NumberObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NumberObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NumberPrototype.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
NumberPrototype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Object.cpp LibJS: Temporarily clear exception in Object::get_without_side_effects() 2021-04-24 20:11:04 +02:00
Object.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ObjectConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ObjectConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ObjectPrototype.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ObjectPrototype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
PrimitiveString.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
PrimitiveString.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Promise.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Promise.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseJobs.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseJobs.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromisePrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromisePrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseReaction.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseReaction.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseResolvingFunction.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PromiseResolvingFunction.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
PropertyAttributes.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
PropertyName.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ProxyConstructor.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ProxyConstructor.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ProxyObject.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ProxyObject.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
Reference.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Reference.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ReflectObject.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
ReflectObject.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
RegExpConstructor.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
RegExpConstructor.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
RegExpObject.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
RegExpObject.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
RegExpPrototype.cpp LibJS: Use the match's global offset for 'index' in RegExp.exec() 2021-04-23 10:05:04 +02:00
RegExpPrototype.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
ScopeObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ScopeObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ScriptFunction.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ScriptFunction.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Shape.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Shape.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StringConstructor.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StringConstructor.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StringIterator.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
StringIterator.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
StringIteratorPrototype.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
StringIteratorPrototype.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
StringObject.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StringObject.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StringOrSymbol.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
StringPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
StringPrototype.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Symbol.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
Symbol.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolConstructor.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolConstructor.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolObject.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolObject.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolPrototype.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SymbolPrototype.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
TemporaryClearException.h LibJS: Add TemporaryClearException helper class 2021-04-24 20:11:04 +02:00
TypedArray.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
TypedArray.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TypedArrayConstructor.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
TypedArrayConstructor.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
TypedArrayPrototype.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
TypedArrayPrototype.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Uint8ClampedArray.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Uint8ClampedArray.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Value.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Value.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
VM.cpp LibJS: Add TemporaryClearException helper class 2021-04-24 20:11:04 +02:00
VM.h LibJS: Add VM::on_call_stack_emptied callback 2021-04-24 20:11:04 +02:00
WithScope.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
WithScope.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00