Bug 1311726 - Move Module Evaluation into ModuleLoader; r=jonco

Module evaluation is independent of it's context. We just need the globalObject to set up the
execution environment.

Differential Revision: https://phabricator.services.mozilla.com/D132678
This commit is contained in:
Yulia Startsev
2021-12-08 09:44:12 +00:00
parent 503b02ed48
commit c52c6cab45
2 changed files with 16 additions and 15 deletions

View File

@@ -568,13 +568,6 @@ class ScriptLoader final : public nsISupports {
nsresult EvaluateScript(nsIGlobalObject* aGlobalObject,
ScriptLoadRequest* aRequest);
// Helper function to set up the global correctly for dynamic imports.
nsresult EvaluateModule(ScriptLoadRequest* aRequest);
// Implements https://html.spec.whatwg.org/#run-a-module-script
nsresult EvaluateModule(nsIGlobalObject* aGlobalObject,
ScriptLoadRequest* aRequest);
/**
* Queue the current script load request to be saved, when the page
* initialization ends. The page initialization end is defined as being the
@@ -745,6 +738,13 @@ class ModuleLoader : public nsISupports {
using MaybeSourceText =
mozilla::MaybeOneOf<JS::SourceText<char16_t>, JS::SourceText<Utf8Unit>>;
// Helper function to set up the global correctly for dynamic imports.
nsresult EvaluateModule(ScriptLoadRequest* aRequest);
// Implements https://html.spec.whatwg.org/#run-a-module-script
nsresult EvaluateModule(nsIGlobalObject* aGlobalObject,
ScriptLoadRequest* aRequest);
void SetModuleFetchStarted(ModuleLoadRequest* aRequest);
void SetModuleFetchFinishedAndResumeWaitingRequests(
ModuleLoadRequest* aRequest, nsresult aResult);