Andreas Kling
b81816a539
LibJS+LibWeb: Make CyclicModule.h not include AST.h
...
This led to some fallout as many things in LibJS and LibWeb were pulling
in other things via CyclicModule.h
2022-11-23 16:05:59 +00:00
Andreas Kling
27e0f56c90
LibJS: Make CyclicModule.h not include AST.h
2022-11-23 16:05:59 +00:00
Andreas Kling
58feae8b60
LibJS: Make CyclicModule.h not include PromiseCapability.h
2022-11-23 16:05:59 +00:00
networkException
ea34cb302d
LibJS: Add accessor for requested modules to CyclicModule
2022-10-06 16:41:36 +02:00
networkException
fb6de442c6
LibJS: Add [[HostDefined]] field to Modules
...
This patch adds the [[HostDefined]] field defined in
https://tc39.es/ecma262/#table-module-record-fields to module records.
Co-authored-by: davidot <davidot@serenityos.org>
2022-10-06 16:41:36 +02:00
Linus Groh
fc9d587e39
LibJS: Make PromiseCapability GC-allocated
...
A struct with three raw pointers to other GC'd types is a pretty big
liability, let's just turn this into a Cell itself.
This comes with the additional benefit of being able to capture it in
a lambda effortlessly, without having to create handles for individual
members.
2022-10-02 23:02:27 +01:00
Linus Groh
c2326ec95a
LibJS: Move PromiseCapability into its own cpp/h file
...
This is not strictly connected to PromiseReaction in any way.
Preparation before doing some actual work on it :^)
2022-10-02 23:02:27 +01:00
Andreas Kling
00c8f07192
LibJS: Make Script and Module GC-allocated
...
This ensures that code currently in any active or saved execution stack
always stays alive.
2022-09-06 00:27:09 +02:00
Linus Groh
9f3f3b0864
LibJS: Remove implicit wrapping/unwrapping of completion records
...
This is an editorial change in the ECMA-262 spec, with similar changes
in some proposals.
See:
- 7575f74
- df899eb
- 9eb5a12
- c81f527
2022-05-03 01:09:29 +02:00
davidot
f568939568
LibJS: Implement the import assertions proposal
...
The hard part of parsing them in import statements and calls was already
done so this is just removing some check which threw before on
assertions. And filtering the assertions based on the result of a new
host hook.
2022-01-30 17:40:20 +00:00
davidot
1b8ccf9a66
LibJS: Implement Module linking and evaluating
2022-01-22 01:21:18 +00:00