ladybird/Libraries/LibWeb/HTML/Scripting
Andreas Kling 4a7dc45b3f LibWeb+LibJS: Compile fetched top-level JS off-thread
Split Rust program compilation so code generation and assembly finish
before the main thread materializes GC-backed executable objects. The
new CompiledProgram handle owns the parsed program, generator state, and
bytecode until C++ consumes it on the main thread.

Wire WebContent script fetching through that handle for classic scripts
and modules. Syntax-error paths still return ParsedProgram, so existing
error reporting stays in place. Successful fetches now do top-level
codegen on the thread pool before deferred_invoke hands control back to
the main thread.

Executable creation, SharedFunctionInstanceData materialization, module
metadata extraction, and declaration data extraction still run on the
main thread where VM and GC access is valid.
2026-04-26 21:51:52 +02:00
..
Agent.cpp LibWeb: Split out SimilarOriginWindowAgent from HTML::Agent 2025-04-25 14:07:51 +02:00
Agent.h LibJS: Switch Agent [[CanBlock]] slot to a enum member 2025-04-25 14:07:51 +02:00
ClassicScript.cpp LibWeb+LibJS: Compile fetched top-level JS off-thread 2026-04-26 21:51:52 +02:00
ClassicScript.h LibWeb+LibJS: Compile fetched top-level JS off-thread 2026-04-26 21:51:52 +02:00
Environments.cpp LibWeb: Use VM helpers for execution context access 2026-04-13 18:29:43 +02:00
Environments.h LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
EnvironmentSettingsSnapshot.cpp LibWeb: Remove API URL character encoding 2026-01-13 13:51:32 +00:00
EnvironmentSettingsSnapshot.h LibWeb: Remove API URL character encoding 2026-01-13 13:51:32 +00:00
ExceptionReporter.cpp LibJS+LibWeb: Make DOMException hold an [[ErrorData]] slot 2026-04-08 20:33:53 +02:00
ExceptionReporter.h LibWeb: Enable EXPLICIT_SYMBOL_EXPORT 2025-08-23 16:04:36 -06:00
Fetching.cpp LibWeb+LibJS: Compile fetched top-level JS off-thread 2026-04-26 21:51:52 +02:00
Fetching.h LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
Fetching.idl
ImportMap.cpp LibWeb: Reduce recompilation impact of DOM/Document.h 2026-02-11 20:02:28 +01:00
ImportMap.h LibJS: Use FlyString in PropertyKey instead of DeprecatedFlyString 2025-03-24 22:27:17 +00:00
ImportMapParseResult.cpp LibWeb: Visit ImportMapParseResult in HTMLScriptElement::visit_edges 2026-02-21 11:14:45 -05:00
ImportMapParseResult.h LibWeb: Visit ImportMapParseResult in HTMLScriptElement::visit_edges 2026-02-21 11:14:45 -05:00
ModuleMap.cpp LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
ModuleMap.h LibWeb: Support CSS modules 2026-04-03 21:21:09 +02:00
ModuleScript.cpp LibWeb+LibJS: Compile fetched top-level JS off-thread 2026-04-26 21:51:52 +02:00
ModuleScript.h LibWeb+LibJS: Compile fetched top-level JS off-thread 2026-04-26 21:51:52 +02:00
Script.cpp LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
Script.h LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
SerializedEnvironmentSettingsObject.cpp LibWeb/HTML: Track secure context as part of Serialized{Document,Worker} 2026-02-26 07:22:50 +01:00
SerializedEnvironmentSettingsObject.h LibWeb/HTML: Track secure context as part of Serialized{Document,Worker} 2026-02-26 07:22:50 +01:00
SimilarOriginWindowAgent.cpp LibWeb: Change agent's signal_slots into a GC::RootVector 2025-11-24 12:45:22 +00:00
SimilarOriginWindowAgent.h LibWeb: Implement scoped custom element registries 2026-03-27 19:49:55 +00:00
TemporaryExecutionContext.cpp LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
TemporaryExecutionContext.h LibWeb: Remove ShadowRealm HTML integration 2026-04-05 13:57:58 +02:00
WindowEnvironmentSettingsObject.cpp LibWeb: Remove API URL character encoding 2026-01-13 13:51:32 +00:00
WindowEnvironmentSettingsObject.h LibWeb: Remove API URL character encoding 2026-01-13 13:51:32 +00:00
WorkerAgent.cpp LibWeb/HTML: Hook up a WorkerAgent for web workers 2025-04-25 14:07:51 +02:00
WorkerAgent.h LibWeb/HTML: Hook up a WorkerAgent for web workers 2025-04-25 14:07:51 +02:00
WorkerEnvironmentSettingsObject.cpp LibWeb: Use enum instead of bool for CanUseCrossOriginIsolatedAPIs 2026-02-13 16:47:42 +00:00
WorkerEnvironmentSettingsObject.h LibWeb: Remove Document.h include from DOMParser.h, DOMImplementation.h 2026-02-08 18:51:13 +01:00