summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS/Runtime/PromiseResolvingElementFunctions.h
AgeCommit message (Collapse)Author
2022-01-04LibJS: Convert PromiseResolvingElementFunction to ThrowCompletionOrLinus Groh
2021-10-21LibJS: Convert NativeFunction::{call,construct}() to ThrowCompletionOrLinus Groh
Both at the same time because many of them call construct() in call() and I'm not keen on adding a bunch of temporary plumbing to turn exceptions into throw completions. Also changes the return value of construct() to Object* instead of Value as it always needs to return an object; allowing an arbitrary Value is a massive foot gun.
2021-09-11LibJS: Specify right base for PromiseResolvingElementFunction subclassesAndreas Kling
2021-09-11LibJS: Don't use MarkedValueList in PromiseValueListAndreas Kling
Instead, override visit_edges() and mark the values like any other Cell subclass would. This makes PromiseValueList play nice with zombification.
2021-08-23LibJS: Implement Promise.allSettled on the Promise constructorTimothy Flynn
2021-08-23LibJS: Implement Promise.any on the Promise constructorTimothy Flynn
2021-08-23LibJS: Generalize PromiseAllResolveElementFunction common functionalityTimothy Flynn
The element-resolving functions on the Promise constructor are all very similar. To prepare for more of these functions to be implemented, break out common parts into a base class.